Все команды выполняются в гостевой операционной системе Debian 11. Для примера взят проект HTTP сервера Vapor – https://vapor.codes, который написан на языке программирования Swift.
Шаг 1. Установить Docker – https://docs.docker.com/engine/install/debian/
Шаг 2. Создать Dockerfile
в папке проекта.
FROM swift:5.8-alpine
WORKDIR /app
RUN apt-get update &&\
apt-get install build-essential -y &&\
apt-get install curl -y &&\
git clone https://github.com/vapor/toolbox.git &&\
cd toolbox && make install
Шаг 3. Собрать образ. Перейти в папку с файлом Dockerfile
и выполнить команду:
$ sudo docker build -t "Название образа" .
Шаг 4. Запустить контейнер:
$ sudo docker run --name swift -p 127.0.0.1:3000:8080 --rm -v $(pwd):/app swift-develop swift run App serve -b 0.0.0.0
- `docker run –name swift` Запускается контейнер и ему присваивается имя `swift`.
- `-p 127.0.0.1:3000:8080` Настройка проброса портов. По адресу 127.0.0.1:3000 контейнер доступен из вне.
- После завершения работы контейнер удаляется командой `–rm`.
- `-v $(pwd):/app` Подключается volume текушего расположения в папку `app` в контейнере.
- Контейнер запускается из образа `swift-develop`.
- `swift run App serve -b 0.0.0.0` запускает компилятор. `App` это название цели указанное в Package.swift.
Добавить комментарий