Ответы пользователя по тегу Docker
  • Celery не видит модуль. Как подключить celery к FastApi?

    @domanskiy Автор вопроса
    В итоге, рабочее решение:
    61b0510541964306152675.png
    Мне не совсем понятно как celery находит именно этот task.py
    Но всё работает.
    !!!Внимание
    celery==4.4.7
    flower==0.9.7
    Для 5й версии celery, код запуска другой. Смотри документацию
    Ответ написан
    Комментировать
  • Как прописать в docker-compose для VUEJS авторестарт при изменении файлов?

    @domanskiy Автор вопроса
    Нашел решение. 3 дня потратил
    источник
    и еще
    environment:
          - CHOKIDAR_USEPOLLING=true

    в папке pprint_vue есть файл
    .dockerignore
    .gitignore
    .git
    .idea
    node_modules


    В итоге выглядит следующим образом.
    Dockerfile
    FROM node:lts-alpine as build
    
    ARG APP_DIR=app
    WORKDIR /${APP_DIR}
    ENV PATH /app/node_modules/.bin:$PATH
    
    COPY package.json ./
    RUN npm install npm@latest
    RUN npm install   --no-progress --ignore-optional
    RUN npm install @vue/cli -g
    
    EXPOSE 5000
    
    CMD ["npm", "run", "serve"]


    docker-compose.yml

    version: '3.9'
    
    #настройка сети между контейнерами.
    networks:
      static-network:
        ipam:
          driver: default
          config:
            - subnet: 10.5.0.0/16
        
    services:
    
      database:
        image: postgres:13 # имя контейнера
        container_name: "postgres_cont"
        ports:
          - "6532:5432"
        env_file:
          - pg-env.env # configure env postgres
        volumes:
          - E:\docker\volumes\postgres:/var/lib/postgresql/data
        restart: unless-stopped #рестарт если контейнер "вылетает"
        logging: #отключаем логирование в консоли
          driver: none
        networks:
          static-network:
            ipv4_address: 10.5.0.5
    
      pgAdmin:
        image: dpage/pgadmin4 #имя контейнера
        container_name: "pgAdmin_cont"
        ports:
          - "5555:80"
        env_file:
          - pgadmin-env.env # configure pgAdmin
        depends_on:
          - database
        volumes:
          - E:\docker\volumes\pgAdmin:/var/lib/pgadmin
        restart: unless-stopped #рестарт если контейнер "вылетает"
        logging: #отключаем логирование в консоли
          driver: none
        networks:
          static-network:
            ipv4_address: 10.5.0.8
    
      app_fastapi:
        # image: python:3.8
        container_name: "app_FastAPI" #имя контейнера
        build:
           context: ./FastAPI
           dockerfile: Dockerfile
        volumes:
          - ./FastAPI:/app_fastapi
        ports:
          - 8000:8000
        depends_on:
          - database
        entrypoint: ["python", "main.py"]
        restart: unless-stopped #рестарт если контейнер "вылетает"
        networks: #принудительно задаём IP
          static-network:
            ipv4_address: 10.5.0.6
    
    
      vue_frontend:
        container_name: vue_ui
        build: 
          context: ./pprint_vue
          dockerfile: Dockerfile
        stdin_open: true
        tty: true
        environment:
          - CHOKIDAR_USEPOLLING=true
        volumes:
          - ./pprint_vue:/app
          - /app/node_modules
        ports:
          - "5000:5000"
        restart: unless-stopped #рестарт если контейнер "вылетает"
        depends_on:
          - app_fastapi
        networks: #принудительно задаём IP
          static-network:
            ipv4_address: 10.5.0.10
    
    volumes:
    
      pprint_vue:
        name: pprint_vue
    
      FastAPI:
        name: FastAPI



    Т.к. поменял стандартный порт для VUE. package.json немного изменён
    package.json

    "scripts": {
            "serve": "vue-cli-service serve --port 5000",
            "build": "vue-cli-service build"
        },

    Ответ написан
    4 комментария
  • Как в docker для Windows изменить папку хранения images?

    @domanskiy Автор вопроса
    сам докер 20.10.0, build 7287ab3
    Ответ написан
    Комментировать