WORKDIR
- сам создаёт директорию, вызывать отдельно RUN mkdir -p ...
не надо.EXPOSE 9000
можешь не указывать - она ничего не делает.Через командную строку линукс запуска файла выглядит как java -jar app.jar
ENTRYPOINT ["java", "-jar", "/vagrant/Docker/app/app.jar"]
это внешний интерфейс который объединяется бриджом с основным интерфейсом сервера что смотрит в интернет.
ports
подробнее)network_mode: host
).networks:
back:
name: back
driver: bridge
ipam:
driver: default
config:
- subnet: 172.16.238.0/24
gateway: 172.16.238.1
driver_opts:
com.docker.network.bridge.name: back
docker prune system -af
и ее надо отдельно запускать.docker exec -it python_container bash
time python temp/temp_file.py
server {
server_name example.com;
location ^~ /my_app/ {
proxy_pass http://ip_address:84/;
}
}
Если на windows сервер поставлю докер
version: "3.2"
services:
my_db:
image: mysql:8.0.26
restart: always
container_name: mysql8
command: --default-authentication-plugin=mysql_native_password
environment:
MYSQL_ROOT_PASSWORD: superpassword
ports:
working_dir: /var/lib/mysql
volumes:
- "./mysql:/var/lib/mysql:rw"
app:
build: ./app/
command: >
python3 app.py
depends_on:
- my_db