前提・実現したいこと
実行環境:
MacOS High Sierra 10.13.3
docker: 17.12.0-ce, build c97c6d6
docker-compose: 1.18.0, build 8dd22a9
実現したいことは,
docker-composeでappコンテナとdbコンテナを起動し,
appコンテナ内からdbコンテナ内のpostgresqlサーバーに接続がしたいです.
現状, appコンテナの立ち上げ,内部へアクセスまでが出来ていますが,
そこからdbコンテナ内のpostgresqlサーバーへアクセスが出来ていません.
発生している問題・エラーメッセージ
psqlコマンドが見つからない
root@fa31b088af86:/# psql -U pguser -d hoge -p 5432 bash: psql: command not found
該当のソースコード
docker-compose.yml
version: '2' services: db: image: postgres ports: - 5432 environment: - POSTGRES_USER=pguser - POSTGRES_PASSWORD=pgpass - POSTGRES_DB=hoge # データの永続化 volumes: - ./db/postgresql:/var/lib/postgresql/data tty: true app: # dockerfileの場所を指定 build: . # dbコンテナを指定 depends_on: - db # appコンテナの/etc/hostsにdbのipを記述する links: - db # docker-compose upした時に立ち上げたままにする tty: true
dockerfile
FROM ubuntu:16.04 RUN apt-get -y update RUN apt-get -y upgrade
試したこと
# docker-compose ビルドしてコンテナを立ち上げ docker-compose up -d --build
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9c5680547fad dockercompose_app "/bin/bash" 13 seconds ago Up 12 seconds dockercompose_app_1 f5c2a10c43c1 postgres "docker-entrypoint.s…" 13 seconds ago Up 13 seconds 0.0.0.0:32769->5432/tcp dockercompose_db_1
# 立ち上げたappコンテナ(dockercompose_app_1)の内部にアクセス docker exec -it dockercompose_app_1 bash # postgresqlに接続 → psqlコマンドがありません psql -U pguser -d hoge -p 5432 bash: psql: command not found
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/16 13:23