appstore-1panel/apps/jumpserver/v3.4.3/docker-compose.yml

92 lines
2.5 KiB
YAML
Raw Normal View History

version: '3.8'
services:
jms_mysql:
image: mariadb:10.6
restart: always
labels:
createdBy: "Apps"
environment:
MARIADB_ROOT_PASSWORD: ${DB_PASSWORD}
MARIADB_DATABASE: ${DB_NAME}
healthcheck:
test: "mysql -h127.0.0.1 -uroot -p$$MARIADB_ROOT_PASSWORD -e 'SHOW DATABASES;'"
interval: 10s
timeout: 5s
retries: 3
start_period: 30s
volumes:
- ${VOLUME_DIR}/mariadb/data:/var/lib/mysql
networks:
- 1panel-network
jms_redis:
image: redis:6.2
restart: always
labels:
createdBy: "Apps"
command: redis-server --requirepass ${REDIS_PASSWORD} --maxmemory-policy allkeys-lru
environment:
REDIS_PASSWORD: ${REDIS_PASSWORD}
healthcheck:
test: "redis-cli -h 127.0.0.1 -a $$REDIS_PASSWORD info Replication"
interval: 10s
timeout: 5s
retries: 3
start_period: 10s
volumes:
- ${VOLUME_DIR}/redis/data:/data
networks:
- 1panel-network
jms_all:
image: jumpserver/jms_all:v3.4.3
container_name: ${CONTAINER_NAME}
privileged: true
restart: always
labels:
createdBy: "Apps"
environment:
SECRET_KEY: ${SECRET_KEY}
BOOTSTRAP_TOKEN: ${BOOTSTRAP_TOKEN}
DEBUG: ${DEBUG:-FALSE}
LOG_LEVEL: ${LOG_LEVEL}
DB_HOST: ${DB_HOST}
DB_PORT: ${DB_PORT}
DB_USER: ${DB_USER}
DB_PASSWORD: ${DB_PASSWORD}
DB_NAME: ${DB_NAME}
REDIS_HOST: ${REDIS_HOST}
REDIS_PORT: ${REDIS_PORT}
REDIS_PASSWORD: ${REDIS_PASSWORD}
MAGNUS_MYSQL_PORT: ${MAGNUS_MYSQL_PORT}
MAGNUS_MARIADB_PORT: ${MAGNUS_MARIADB_PORT}
MAGNUS_REDIS_PORT: ${MAGNUS_REDIS_PORT}
ports:
- ${HTTP_PORT}:80
- ${SSH_PORT}:2222
- ${MAGNUS_MYSQL_PORT}:33061
- ${MAGNUS_MARIADB_PORT}:33062
- ${MAGNUS_REDIS_PORT}:63790
depends_on:
jms_mysql:
condition: service_healthy
jms_redis:
condition: service_healthy
healthcheck:
test: "curl -fsL http://localhost/api/health/ > /dev/null"
interval: 10s
timeout: 5s
retries: 3
start_period: 90s
volumes:
- ${VOLUME_DIR}/core/data:/opt/jumpserver/core/data
- ${VOLUME_DIR}/koko/data:/opt/jumpserver/koko/data
- ${VOLUME_DIR}/lion/data:/opt/jumpserver/lion/data
- ${VOLUME_DIR}/magnus/data:/opt/jumpserver/magnus/data
- ${VOLUME_DIR}/nginx/data:/var/log/nginx
networks:
- 1panel-network
networks:
1panel-network:
external: true