mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-05-10 12:25:02 +00:00
refactor: new dev/prod containers
- Use a single Dockerfile for all Zeppelin services - Add a Dockerfile in project root that can be used by app hosting services - Provide a standalone and lightweight prod setup - Standalone is the same as the old setup, with mysql+nginx - Lightweight only runs bot+backend+dash, no mysql/nginx - Remove mounted mysql data folders for dev and prod - This resolves permission issues caused by the mount - The mysql service uses a regular named volume now - Simplify .env options and clearly separate different prod setups - Remove update.sh - Different setups require different update procedures, so a common update.sh no longer works
This commit is contained in:
parent
730b8c1d6b
commit
509d96ce83
30 changed files with 948 additions and 274 deletions
|
@ -1,30 +1,25 @@
|
|||
version: '3'
|
||||
name: zeppelin-dev
|
||||
volumes:
|
||||
vscode-remote: {}
|
||||
vscode-server: {}
|
||||
jetbrains-data: {}
|
||||
home: {}
|
||||
services:
|
||||
nginx:
|
||||
build:
|
||||
context: ./docker/development/nginx
|
||||
args:
|
||||
DOCKER_DEV_WEB_PORT: ${DOCKER_DEV_WEB_PORT:?Missing DOCKER_DEV_WEB_PORT}
|
||||
API_PORT: ${API_PORT:?Missing API_PORT}
|
||||
DEVELOPMENT_WEB_PORT: ${DEVELOPMENT_WEB_PORT:?Missing DEVELOPMENT_WEB_PORT}
|
||||
ports:
|
||||
- "${DOCKER_DEV_WEB_PORT:?Missing DOCKER_DEV_WEB_PORT}:443"
|
||||
volumes:
|
||||
- ./:/zeppelin
|
||||
- "${DEVELOPMENT_WEB_PORT:?Missing DEVELOPMENT_WEB_PORT}:443"
|
||||
|
||||
mysql:
|
||||
image: mysql:8.0
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${DOCKER_DEV_MYSQL_ROOT_PASSWORD?:Missing DOCKER_DEV_MYSQL_ROOT_PASSWORD}
|
||||
MYSQL_ROOT_PASSWORD: ${DEVELOPMENT_MYSQL_ROOT_PASSWORD?:Missing DEVELOPMENT_MYSQL_ROOT_PASSWORD}
|
||||
MYSQL_DATABASE: zeppelin
|
||||
MYSQL_USER: zeppelin
|
||||
MYSQL_PASSWORD: ${DOCKER_DEV_MYSQL_PASSWORD?:Missing DOCKER_DEV_MYSQL_PASSWORD}
|
||||
MYSQL_PASSWORD: ${DEVELOPMENT_MYSQL_PASSWORD?:Missing DEVELOPMENT_MYSQL_PASSWORD}
|
||||
ports:
|
||||
- ${DOCKER_DEV_MYSQL_PORT:?Missing DOCKER_DEV_MYSQL_PORT}:3306
|
||||
- ${DEVELOPMENT_MYSQL_PORT:?Missing DEVELOPMENT_MYSQL_PORT}:3306
|
||||
volumes:
|
||||
- ./docker/development/data/mysql:/var/lib/mysql
|
||||
command: --authentication-policy=mysql_native_password
|
||||
|
@ -33,13 +28,10 @@ services:
|
|||
build:
|
||||
context: ./docker/development/devenv
|
||||
args:
|
||||
DOCKER_DEV_SSH_PASSWORD: ${DOCKER_DEV_SSH_PASSWORD:?Missing DOCKER_DEV_SSH_PASSWORD}
|
||||
DOCKER_DEV_UID: ${DOCKER_DEV_UID:-1000}
|
||||
DEVELOPMENT_SSH_PASSWORD: ${DEVELOPMENT_SSH_PASSWORD:?Missing DEVELOPMENT_SSH_PASSWORD}
|
||||
DEVELOPMENT_UID: ${DEVELOPMENT_UID:-1000}
|
||||
ports:
|
||||
- "${DOCKER_DEV_SSH_PORT:?Missing DOCKER_DEV_SSH_PORT}:22"
|
||||
- "${DEVELOPMENT_SSH_PORT:?Missing DEVELOPMENT_SSH_PORT}:22"
|
||||
volumes:
|
||||
- ./:/home/ubuntu/zeppelin
|
||||
- ~/.ssh:/home/ubuntu/.ssh
|
||||
- vscode-remote:/home/ubuntu/.vscode-remote
|
||||
- vscode-server:/home/ubuntu/.vscode-server
|
||||
- jetbrains-data:/home/ubuntu/.cache/JetBrains
|
||||
- home:/home/ubuntu
|
||||
- ./:/workspace/zeppelin
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue