Oto numer image, którego używam.Jak używać woluminu w dokowaniu komponować dla postgreS?
Nazwałam go posgres_test
Jeśli uruchomić obraz indywidualnie
docker run -i -t -v="test_volume:/var/lib/postgresql" -p 5432:5432 posgres_test
mogę do niego dostęp z
psql -h 192.168.99.100 -p 5432 -U pguser -W pgdb
Albo mogę do niego dostęp z moim golang aplikacji
// host is set to postgres
db, err := sql.Open("postgres", "postgres://pguser:[email protected]:5432/pgdb")
// table test_db is manually created.
rows, err := db.Query("SELECT name FROM test_db WHERE)
Jednak jeśli używam docker compose
docker-compose.yml
version: "2"
services:
postgres:
image: my_image/postgresql:9.3
volumes:
- test_volume:/var/lib/postgresql
ports:
- "5432:5432"
web:
image: my-golang-app4
ports:
- "8080:8080"
volumes:
test_volume: {}
uzyskać następujące
[email protected] ERROR: relation "test_db" does not exist at character 15
wiem na pewno test_db
istnieć w test_volume
od
docker run -i -t -v="test_volume:/var/lib/postgresql" -p 5432:5432 posgres_test
psql -h 192.168.99.100 -p 5432 -U pguser -W pgdb
\dt
pokaże tabela I utworzono
Ale wydaje się, że moja aplikacja w Döcker komponować nie mogę go znaleźć
Czy ktoś może mi pomóc?
jestem już w stanie uzyskać dostęp do głośności, gdy biegnę pojemnik Döcker indywidualnie (np 'dokowanym uruchomić -i -t -v =" test_volume.:/Var/lib/postgresql "-p 5432: 5432 posgres_test") problem pojawia się, gdy używam dockera komponować – Kevin
Nieważne, nie zdałem sobie z tego sprawy wczoraj ^^ ' Ale widziałem, że w twoim poście twój docker-compose.yml nie ma 'wersji:' x "do niego, i jeśli dobrze pamiętam, domyślnie docker-compose przyjmij wersję 1 w tym przypadku, a konfiguracja woluminu nie działa ... Spróbuj wstawić' version: '2''. Mam nadzieję, że zadziała :) –
Niestety, dodanie 'version:" 2 "' nie działa. – Kevin