Нужна помощь по запуску сервера и буду благодарен за совет)
1. Сделал репозиторий на гит хаб.
2. Скачал репозиторий на сервер на digital ocean.
3. Установил Docker.
4. Выполнил команду: docker-compose -f docker-compose_dev.yml up -d —build
5. Появился image: evolve latest b86f2c8ae18a About a minute ago 1.09GB
Что теперь делать? Как запустить? Docker run?
сергей кузьмин, теперь совершенно запутался.
Действительно, работают два контейнера - джанго и постгрес.
Но зайти на сайт я не могу. Я набираю как обычно ххх.ххх.ххх.ххх:8888 - нет ответа.
docker-compose_dev.yml такого рода:
version: "3.7"
services:
web:
build: ./ #build everything except .gitignore
command: python3 manage.py runserver 0.0.0.0:8000 #launch at local server
volumes:
- .:/user/src/app
ports:
- 8888:8888 #IN:OUT
env_file:
- ./.env #Virtual environment
db:
image: postgres:12.0-alpine #Image for DB
volumes:
- dm_evolveapp_data:/var/lib/postgresql/data/ #DB name
environment:
- POSTGRES_USER=<i>значение</i>
- POSTGRES_PASSWORD=<i>значение</i>
- POSTGRES_DB=<i>значение</i>
volumes:
dm_evolveapp_data:
version: "3.7"
services:
web:
build: ./ #build everything except .gitignore
command: python3 manage.py runserver 0.0.0.0:8888 #launch at local server
volumes:
- .:/user/src/app
ports:
- 8888:8888 #IN:OUT
env_file:
- ./.env #Virtual environment
db:
image: postgres:12.0-alpine #Image for DB
volumes:
- dm_evolveapp_data:/var/lib/postgresql/data/ #DB name
environment:
- POSTGRES_USER=...
- POSTGRES_PASSWORD=...
- POSTGRES_DB=..
volumes:
dm_evolveapp_data:
docker ps:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8463f4a1e4cf app_web "python3 manage.py r…" 18 seconds ago Up 18 seconds 0.0.0.0:8888->8888/tcp evolveapp_web_1
d42627b8baa1 postgres:12.0-alpine "docker-entrypoint.s…" 18 hours ago Up 18 seconds 5432/tcp app_db_1
ВСе равно не запускается. Есть предположения?
контейнер это просто компьютер такой же как тот на котором вы работаете...
- зайдите в него
docker exec -it 8463f4a1e4cf sh
и смотрите там уже
работает ли сервис ps ax| grep pytho[n]
слушает ли порт netstat -antp | grep 8888
можно ли открыть страницу curl -k http://localhost:8888
что в логах и т п
думаю что вызвав 0.0.0.0 вы допустили ошибку но может еще что
сергей кузьмин, спасибо за подсказку) стал ближе к истине.
Я зашел в контейнер и запустил "python manage.py runserver". Ошибка:
Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5433? could not connect to server: Cannot assign requested address Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5433?
У меня работает 2 контейнера. Второй - postgres.
Docker ps пишет:
b041e8e44aae postgres:12.0-alpine "docker-entrypoint.s…" 20 hours ago Up 20 hours 5432/tcp app_db_1
14b048af272f app_web "python3 manage.py r…" 20 hours ago Up 20 hours 0.0.0.0:8000->8000/tcp, 8888/tcp app_web_1
Сергей, спасибо за помощь. Что я сделал:
1. Удалил с сервера постгрес - запускаю его только в контейнере.
2. Написал db, действительно, в этом тоже ошибка.
3. Добавил:
depends_on:
- db
4. В Dockerfile убрал команду:
CMD gunicorn App.wsgi:application --bind 0.0.0.0:$PORT
- она конфликтовала с командой из docker-compose: python3 manage.py runserver 0.0.0.0:8888