Использовать тома докера.Все ваши постоянные данные, сгенерированные контейнером, будут сохранены в var/lib/docker/volumes
.Если вы используете docker-compise, вы можете сделать что-то вроде ниже.Здесь у меня есть 3 тома, и я называю это tomcat-data
, host-upload
, tomcat-webapps
.Здесь все данные, которые я ввел в tomcat-data
, /home/foo/upload
и /usr/local/tomcat/webapps
, будут храниться на главном компьютере внутри var/lib/docker/volumes
.Таким образом, даже если контейнер выйдет из строя и вы вызовете другой контейнер, все данные в этих каталогах будут сохранены.Дайте знать, если у вас появятся вопросы.
Вы также можете привязать каталоги хостов непосредственно к контейнеру Docker.Дайте мне знать, если у вас есть какие-либо вопросы
version: '3.2'
services:
tomcat:
image: "ciena/tomcat"
volumes:
- tomcat-data:/tomcat-data
- host-upload:/home/foo/upload
- tomcat-webapps:/usr/local/tomcat/webapps
ports:
- target: 8080
published: 8080
protocol: tcp
mode: ingress
- target: 2222
published: 22
protocol: tcp
mode: ingress
environment:
- JAVA_MIN_HEAP=256m
- JAVA_MAX_HEAP=512m
deploy:
placement:
constraints:
- node.role == manager
replicas: 1
resources:
limits:
memory: 1024M
cpus: '0.5'
reservations:
memory: 512M
cpus: '0.001'
restart_policy:
condition: any
delay: 5s
max_attempts: 3
window: 60s
volumes:
tomcat-data:
host-upload:
tomcat-webapps:
networks:
default: