haru/redmine_code_review

View on GitHub
.devcontainer/docker-compose.yml

Summary

Maintainability
Test Coverage
version: '3'

services:
  app:
    build:
      context: ..
      dockerfile: .devcontainer/Dockerfile
      args:
        # Update 'VARIANT' to pick a version of Ruby: 3, 3.0, 2, 2.7, 2.6
        # Append -bullseye or -buster to pin to an OS version.
        # Use -bullseye variants on local arm64/Apple Silicon.
        RUBY_VERSION: "3.1"
        # Optional Node.js version to install
        NODE_VERSION: "lts/*"
        REDMINE_VERSION: "5.1-stable"

    # Overrides default command so things don't shut down after the process ends.
    command: sleep infinity

    # Runs app on the same network as the database container, allows "forwardPorts" in devcontainer.json function.
    # network_mode: service:postgres
    # Uncomment the next line to use a non-root user for all processes.
    # user: vscode

    # Use "forwardPorts" in **devcontainer.json** to forward an app port locally.
    # (Adding the "ports" property to this file will not forward from a Codespace.)

  postgres:
    image: postgres:latest
    restart: unless-stopped
    volumes:
      - postgres-data:/var/lib/postgresql/data
      - ./create-db-user.sql:/docker-entrypoint-initdb.d/create-db-user.sql
    environment:
      POSTGRES_USER: postgres
      POSTGRES_DB: redmine
      POSTGRES_PASSWORD: postgres
    # Add "forwardPorts": ["5432"] to **devcontainer.json** to forward PostgreSQL locally.
    # (Adding the "ports" property to this file will not forward from a Codespace.)

  mysql:
    image: mysql:latest
    restart: unless-stopped
    volumes:
      - mysql-data:/var/lib/mysql
    # network_mode: service:postgres
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_USER: redmine
      MYSQL_DB: redmine
      MYSQL_PASSWORD: remine
volumes:
  postgres-data: null
  mysql-data: null