2017-12-07 6 views
0

Gitlab用のDockerビルドがあります。いくつかのSSL証明書やその他のファイルを作成しましたが、コンテナbashを実行するとファイルは表示されません。SSL証明書やその他のファイルがDockerファイル構造に表示されない

自己署名証明書の作成時に
gitlab: 
    image: 'gitlab/gitlab-ce:9.1.0-ce.0' 
    restart: always 
    hostname: 'gitlab.example.com' 
    links: 
    - postgresql:postgresql 
    - redis:redis 
    environment: 
    GITLAB_OMNIBUS_CONFIG: | 
     postgresql['enable'] = false 
     gitlab_rails['db_username'] = "gitlab" 
     gitlab_rails['db_password'] = "gitlab" 
     gitlab_rails['db_host'] = "postgresql" 
     gitlab_rails['db_port'] = "5432" 
     gitlab_rails['db_database'] = "gitlabhq_production" 
     gitlab_rails['db_adapter'] = 'postgresql' 
     gitlab_rails['db_encoding'] = 'utf8' 
     redis['enable'] = false 
     gitlab_rails['redis_host'] = 'redis' 
     gitlab_rails['redis_port'] = '6379' 
     external_url 'https://gitlab.example.com:30080' 
     nginx['ssl_certificate'] = '/etc/gitlab/trusted-certs/gitlab.example.com.crt' 
     nginx['ssl_certificate_key'] = '/etc/gitlab/trusted-certs/gitlab.example.com.key' 
    ports: 
    - "30080:30080" 
    - "30022:22" 
postgresql: 
    restart: always 
    image: postgres:9.6.2-alpine 
    environment: 
    - POSTGRES_USER=gitlab 
    - POSTGRES_PASSWORD=gitlab 
    - POSTGRES_DB=gitlabhq_production 
redis: 
    restart: always 
    image: redis:3.0.7-alpine 
+0

より適切なシナリオで質問を更新してください。今は非常に抽象です。 – mohan08p

+0

Dockerfileを表示してください、それは始まりです – bluescores

+0

質問を更新しました – NicholasByDesign

答えて

0

、私は私のドッキングウィンドウの容器にEXECおよびドッキングウィンドウはbashに

0

証明書を使用して作成する必要があります(自己署名)参照パスで、私のマシン上にあります「/etc/gitlab/trusted-certs/gitlab.example.com.crt」

あなたのドッキングウィンドウ-compose.ymlはあなたの容器の中にあなたのホストから任意のフォルダをマップしませんでした。コンテナは名前空間を持つプロセスにすぎず、その名前空間の1つはファイルシステムです。これは、容器の中にホストからマウントし、ファイルを読み取り専用と同じように構成されることを

gitlab: 
    image: 'gitlab/gitlab-ce:9.1.0-ce.0' 
    restart: always 
    hostname: 'gitlab.example.com' 
    volumes: 
    - ./path/to/gitlab.example.com.crt:/etc/gitlab/trusted-certs/gitlab.example.com.crt:ro 
    ... 

注:コンテナにホストからディレクトリをマップするには、次のマウント構文を簡単なバインドを使用することができます:ro構文を使用して、コンテナ内のプロセスが証明書を変更しないようにします。あなたのドッカーホストがVM(docker for windows/macを含む)やリモートサーバ上にある場合、そこにファイルがアクセス可能であることを確認する必要があります(例:win/macのdockerはPCフォルダを組み込みVM)。