Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

invalid restart policy 'none' #1559

Open
gischy opened this issue Jan 30, 2025 · 2 comments
Open

invalid restart policy 'none' #1559

gischy opened this issue Jan 30, 2025 · 2 comments
Labels

Comments

@gischy
Copy link

gischy commented Jan 30, 2025

Description of the issue

When calling docker compose -f pwd.yml up -d im getting the error "Error response from daemon: invalid restart policy 'none'"

docker compose -f pwd.yml up -d

Network frappe_docker_frappe_network Creating
Network frappe_docker_frappe_network Created
Volume "frappe_docker_redis-queue-data" Creating
Volume "frappe_docker_redis-queue-data" Created
Volume "frappe_docker_sites" Creating
Volume "frappe_docker_sites" Created
Volume "frappe_docker_logs" Creating
Volume "frappe_docker_logs" Created
Volume "frappe_docker_db-data" Creating
Volume "frappe_docker_db-data" Created
Container frappe_docker-queue-short-1 Creating
Container frappe_docker-redis-cache-1 Creating
Container frappe_docker-backend-1 Creating
Container frappe_docker-redis-queue-1 Creating
Container frappe_docker-scheduler-1 Creating
Container frappe_docker-configurator-1 Creating
Container frappe_docker-websocket-1 Creating
Container frappe_docker-db-1 Creating
Container frappe_docker-queue-long-1 Creating
Container frappe_docker-create-site-1 Creating
Container frappe_docker-redis-queue-1 Created
Container frappe_docker-db-1 Created
Container frappe_docker-backend-1 Created
Container frappe_docker-redis-cache-1 Created
Container frappe_docker-scheduler-1 Created
Container frappe_docker-websocket-1 Created
Container frappe_docker-frontend-1 Creating
Container frappe_docker-queue-short-1 Created
Container frappe_docker-queue-long-1 Created
Container frappe_docker-frontend-1 Created
Error response from daemon: invalid restart policy 'none'

Context information (for bug reports)

Docker Compose version v2.6.1
Docker version 20.10.17, build 100c701
Windows

@gischy gischy added the bug label Jan 30, 2025
@revant
Copy link
Collaborator

revant commented Jan 31, 2025

I can't help with windows or mac. Hope someone helps you.

@karanp41
Copy link

karanp41 commented Mar 16, 2025

# Instead of:
deploy:
  restart_policy:
    condition: none

# Use:
restart: "no"

will fix this problem.

Complete yml file:

version: "3"

services:
  backend:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: unless-stopped
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs
    environment:
      DB_HOST: db
      DB_PORT: "3306"
      MYSQL_ROOT_PASSWORD: admin
      MARIADB_ROOT_PASSWORD: admin

  configurator:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: "no"
    entrypoint:
      - bash
      - -c
    command:
      - >
        ls -1 apps > sites/apps.txt;
        bench set-config -g db_host $$DB_HOST;
        bench set-config -gp db_port $$DB_PORT;
        bench set-config -g redis_cache "redis://$$REDIS_CACHE";
        bench set-config -g redis_queue "redis://$$REDIS_QUEUE";
        bench set-config -g redis_socketio "redis://$$REDIS_QUEUE";
        bench set-config -gp socketio_port $$SOCKETIO_PORT;
    environment:
      DB_HOST: db
      DB_PORT: "3306"
      REDIS_CACHE: redis-cache:6379
      REDIS_QUEUE: redis-queue:6379
      SOCKETIO_PORT: "9000"
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs

  create-site:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: "no"
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs
    entrypoint:
      - bash
      - -c
    command:
      - >
        wait-for-it -t 120 db:3306;
        wait-for-it -t 120 redis-cache:6379;
        wait-for-it -t 120 redis-queue:6379;
        export start=`date +%s`;
        until [[ -n `grep -hs ^ sites/common_site_config.json | jq -r ".db_host // empty"` ]] && \
          [[ -n `grep -hs ^ sites/common_site_config.json | jq -r ".redis_cache // empty"` ]] && \
          [[ -n `grep -hs ^ sites/common_site_config.json | jq -r ".redis_queue // empty"` ]];
        do
          echo "Waiting for sites/common_site_config.json to be created";
          sleep 5;
          if (( `date +%s`-start > 120 )); then
            echo "could not find sites/common_site_config.json with required keys";
            exit 1
          fi
        done;
        echo "sites/common_site_config.json found";
        bench new-site --mariadb-user-host-login-scope='%' --admin-password=admin --db-root-username=root --db-root-password=admin --install-app erpnext --set-default frontend;

  db:
    image: mariadb:10.6
    networks:
      - frappe_network
    healthcheck:
      test: mysqladmin ping -h localhost --password=admin
      interval: 1s
      retries: 20
    restart: unless-stopped
    command:
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci
      - --skip-character-set-client-handshake
      - --skip-innodb-read-only-compressed # Temporary fix for MariaDB 10.6
    environment:
      MYSQL_ROOT_PASSWORD: admin
      MARIADB_ROOT_PASSWORD: admin
    volumes:
      - db-data:/var/lib/mysql

  frontend:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    depends_on:
      - websocket
    restart: unless-stopped
    command:
      - nginx-entrypoint.sh
    environment:
      BACKEND: backend:8000
      FRAPPE_SITE_NAME_HEADER: frontend
      SOCKETIO: websocket:9000
      UPSTREAM_REAL_IP_ADDRESS: 127.0.0.1
      UPSTREAM_REAL_IP_HEADER: X-Forwarded-For
      UPSTREAM_REAL_IP_RECURSIVE: "off"
      PROXY_READ_TIMEOUT: 120
      CLIENT_MAX_BODY_SIZE: 50m
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs
    ports:
      - "8080:8080"

  queue-long:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: unless-stopped
    command:
      - bench
      - worker
      - --queue
      - long,default,short
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs

  queue-short:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: unless-stopped
    command:
      - bench
      - worker
      - --queue
      - short,default
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs

  redis-queue:
    image: redis:6.2-alpine
    networks:
      - frappe_network
    restart: unless-stopped
    volumes:
      - redis-queue-data:/data

  redis-cache:
    image: redis:6.2-alpine
    networks:
      - frappe_network
    restart: unless-stopped

  scheduler:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: unless-stopped
    command:
      - bench
      - schedule
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs

  websocket:
    image: frappe/erpnext:v15.54.4
    networks:
      - frappe_network
    restart: unless-stopped
    command:
      - node
      - /home/frappe/frappe-bench/apps/frappe/socketio.js
    volumes:
      - sites:/home/frappe/frappe-bench/sites
      - logs:/home/frappe/frappe-bench/logs

volumes:
  db-data:
  redis-queue-data:
  sites:
  logs:

networks:
  frappe_network:
    driver: bridge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants