Как мне запулить мой проект на этот серв?
Есть два варианта:
1. через hub.docker.com
а) делаете docker login для регистрации на docker-хабе (можно зайти и сделать свой проект приватным чтобы остальным не повадно было)
б) собираете ваш dockerfile с помощью docker build
в) затем docker push для отправки слоев на ваш хаб
г) затем логинитесь на боевом сервере и делаете docker pull для скачивания слоев
д) docker run
2. Просто кидаете с помощью scp ваш Dockerfile и файлы проекта на боевой сервер и делаете
docker build
Подробнее о командах можно почитать в документации - я лишь описал концепцию
Как затем производить правки в коде?
Все просто - залейте ваш проект в любой репозиторий (github, bitbacker, gitlab ...), после внесения изменений просто логинитесь на сервере, заходите в ваш докер-контейнер и запускаете git pull в нужную директорию, затем сборка или т.п. (для автоматизации процесса можно использовать любой CI).
Проекту нужна БД(куда без нее).
Очень просто - добавляете новый контейнер (например docker pull mysql), на хабе можно посмотреть информацию о запуске такого контейнера
https://hub.docker.com/_/mysql/ и коннектитесь к базе из вашего приложения по внутренней сети вашей docer-системы (docker bridge).