servicecatalog / oscm

An Enterprise-ready Cloud Services Management Software.
https://openservicecatalogmanager.org
Apache License 2.0
38 stars 14 forks source link

Error while starting the container for initializing the database #602

Closed thinkerw closed 4 years ago

thinkerw commented 4 years ago

description: 1、images from https://hub.docker.com/r/servicecatalog/oscm-deployer 2、run the " docker run --name deployer2 --rm -v /docker:/target -v /var/run/docker.sock:/var/run/docker.sock -e INITDB=true -e STARTUP=true servicecatalog/oscm-deployer "

then I can't visit https://ip:8081/oscm-portal,but I can visit the tomcat console https://ip:8081/ screenshot: error

GoebelL commented 4 years ago

Hi @wuweilue Please check the value of BASE_URL_HTTPS you have given in the var.env file. Seems the it has an invalid syntax.

thinkerw commented 4 years ago

Hi @GoebelL I get the docker images again and run the " docker run --name deployer2 --rm -v /docker:/target -v /var/run/docker.sock:/var/run/docker.sock -e INITDB=true -e STARTUP=true servicecatalog/oscm-deployer "

  then I Encountered the following problem

image

   Can you tell me, which version, I can run up?  Thank you.  or have  Complete deployment documentation, just follow the steps and Run smoothly。

    Think you!
GoebelL commented 4 years ago

Hi @wuweilue This looks like some issue with openssl generating private keys on your host. In order help you we need more information. Please answer following questions. a) Check var.env again. Is HOST_FQDN set correctly? b) What is the name and version of your Linux distribution? c) Which versions of docker do you use?
d) Which containers are running after executing deployer2 with above command? Check with docker ps.

OSCM setup documentation can be found here.

thinkerw commented 4 years ago

Hi @GoebelL Think you very much ! 1、CentOS Linux release 7.4.1708 (Core) image 2、Docker version 19.03.5, build 633a0ea image 3、I check again the HOST_FQDN in var.evn,look like no problem. and no any more BASE_URL_HTTPS errors image 4、Run docker ps command, the results are as follows image

Think you!

thinkerw commented 4 years ago

Hi @GoebelL I want to ask a quesiton please. Look at the error message,Is there a place to configure the certificate? which key in var.env? Because run the last version I didn't see the problem。

GoebelL commented 4 years ago

Hi @wuweilue Yes there was a small change on the oscm-deployer recently, that configures default certificates for new identity service. Not totally sure, but I imagine that openssl fails to create the certificate CN name here, because the IP is beeing given instead of the full qualified domain name of the host. If not yet existing, I suggest to set a static full qualified hostname for your docker host and adapt the var.env accordingly. On CentOS 7 this should be possible from command-line - something like hostnamectl set-hostname .... This could help to get OSCM starting up.

thinkerw commented 4 years ago

Hi @GoebelL I reinstalled the version for v18.02, the OSCM Started。 image But it still doesn't work image

thinkerw commented 4 years ago

Hi @GoebelL I tried many times, but the problem still couldn't be solved.

1、hostnamectl image 2、var.env image 3、hosts image

image

thinkerw commented 4 years ago

Hi @GoebelL I found that errors is very likely to run the script of "openssl req -new -passin ". So I look the script of oscm-deployer/start.sh,find the script "openssl req -new -passin file:/tmp/passphrase.txt -key /tmp/ssl.key -out /tmp/ssl.csr -subj "/CN=${HOST_FQDN}"" . Try to run alone it. But I cann't find erros. image

image

GoebelL commented 4 years ago

Hi @wuweilue Ok, I see there is a different issue now. I am looking to the first screenshot you posted yesterday. As shown there, the application containers are all running except for oscm-identity. The Tomee is up as well, but the oscm-portal is not getting deployed. I also see that the oscm-deployer has pulled all containers from latest tag. Please note that latest OSCM also includes and requires the identity service and a few new settings. I fear you have a mixture of different versions in your environment now. I suggest to install from scratch:

  1. backup your var.env file
  2. pull oscm-deployer from latest again
  3. run deployer1 as described here You can copy all env values from your backup file, except for may be three or four new settings. But the default values described in the comments inside the file should work well.
thinkerw commented 4 years ago

Hi @GoebelL Thank you! I try again according to your method, The Result As Follow: 1、The application containers are all running include oscm-identity. 2、But run docker logs -f oscm-core,I find some errors,Var.env and docker-writer-initdb.yml key value have been modified。 The complete screenshot is as follows,Could you tell me How do I configure these incorrect keys in the tomcat log。 I've got to get the oscm running,thanks!

image image image image image image

image image image image image

thinkerw commented 4 years ago

Hi @GoebelL Continue to the previous question,Check the code to find the reason, and find that the key value is taken from the database, and the data source is configured in tomcat. var.env has been configured with key values, I don't know why the configuration setting table of the bss database has no data, and the writable in docker-compose-initdb.yml has been changed to true during initialization.

image

thinkerw commented 4 years ago

Hi @GoebelL After trying many times, the reason why oscm-portal cannot be accessed is that the following key cannot be found in the tomcat log, but in fact var.env has been configured. Help. This needs to be resolved as soon as possible. Thank you very much! BASE_URL_HTTPS=https://192.168.0.96:8081/oscm-portal LOG_FILE_PATH=/opt/logs PSP_USAGE_ENABLED=false TAGGING_MAX_TAGS=50 TAGGING_MIN_SCORE=10 WS_TIMEOUT=60000 AUDIT_LOG_ENABLED=false AUDIT_LOG_MAX_ENTRIES_RETRIEVED=10 MAX_NUMBER_ALLOWED_USERS=100 TIMER_INTERVAL_USER_COUNT=100 AUTH_MODE=INTERNAL

thinkerw commented 4 years ago

Hi @GoebelL thank you very much! The problem has been solved, by looking at the code, insert the missing key into the database. image