version: '3' services: tinyurl: # The official v2 Traefik docker image image: mirrors2/tinyurl container_name: tinyurl restart: always # networks: # - tinyurl # - tinyurl_db depends_on: - tinyurl_db ports: - "2830:2830" # volumes: #default log term # - $PWD/log:/app/tinyurl/log # - config.yml:/app/tinyurl/configs/config.yml environment: - DSN=tinyurl:tinyurl@tcp(tinyurl_db:3306)/tinyurl?charset=utf8mb4 logging: driver: "json-file" options: max-size: "10m" tinyurl_db: image: mariadb container_name: tinyurl_db restart: always # networks: # - tinyurl_db ports: - 3306:3306 expose: - 3306 command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci environment: - MYSQL_ROOT_PASSWORD=supermen - MYSQL_DATABASE=tinyurl - MYSQL_USER=tinyurl - MYSQL_PASSWORD=tinyurl - TZ=Asia/Shanghai volumes: - ./db:/var/lib/mysql # 标准 Linux 系统下使用 - /etc/localtime:/etc/localtime:ro - /etc/timezone:/etc/timezone:ro # healthcheck: # test: ["CMD-SHELL", "/etc/init.d/mysql status"] # interval: 30s # phpmyadmin: # image: phpmyadmin:latest # ports: # - 8080:80 # depends_on: # - tinyurl_db # # networks: # # - tinyurl_db # # - tinyurl # environment: # - PMA_HOST=tinyurl_db # # - PMA_ARBITRARY=1 # restart: unless-stopped # networks: # tinyurl_db: # internal: true # tinyurl: # external: true