build: ./node
                  
                  
                      container_name: mgc_telegram_bot
                  
                  
                      restart: unless-stopped
                  
                  
                      network_mode: host
                  
                  
                      environment:
                  
                  
                        TZ: ${TZ:-Asia/Yekaterinburg}
                  
                  
                        API_KEY: 123
                  
                  
                        MYSQL_HOST: 127.0.0.1
                  
                  
                        MYSQL_USER: mgc
                  
                  
                        MYSQL_PSWD: mgc
                  
                  
                        MYSQL_DB: mcg
                  
                  
                        API_PORT: 7000
                  
                  
                      ports:
                  
                  
                        - "7000:7000"
                  
                  
                      volumes:
                  
                  
                        - ./application:/home/node/application/src:rw
                  
                  
                  
                  
                  
                  Он работает с MySQL которая в принципе на сервере находится.
                  
                  
                  
                  
                  
                  После того как я открыл прослушивание портов — выходит ошибка: node Published ports are discarded when using host network mode
                  
                  
                  С MySQL работает, а вот внешние запросы не принимает.
                  
                  
                  
                  
                  
                  С таким конфигом:
                  
                  
                  version: '3.4'
                  
                  
                  
                  
                  
                  services:
                  
                  
                    node:
                  
                  
                      build: ./node
                  
                  
                      container_name: mgc_telegram_bot
                  
                  
                      restart: unless-stopped
                  
                  
                      environment:
                  
                  
                        TZ: ${TZ:-Asia/Yekaterinburg}
                  
                  
                        API_KEY: 123
                  
                  
                        MYSQL_HOST: 127.0.0.1
                  
                  
                        MYSQL_USER: mgc
                  
                  
                        MYSQL_PSWD: mgc
                  
                  
                        MYSQL_DB: mcg
                  
                  
                        API_PORT: 7000
                  
                  
                      networks:
                  
                  
                        - web
                  
                  
                      ports:
                  
                  
                        - "7000:7000"
                  
                  
                      volumes:
                  
                  
                        - ./application:/home/node/application/src:rw
                  
                  
                  networks:
                  
                  
                    web:
                  
                  
                      external: true
                  
                  
                  
                  
                  
                  Внешние запросы получает, но MySQL не видит.
                  
                  
                  
                  
                  
                  Как это исправить? Чтобы и порты слушал внешние на сервере, и MySQL на сервере видел.
                  
                  
                
когда ты убрал network_mode: host, то локалхостом у контейнера стал он сам, соответственно mysql там не найти. Тебе надо гуглить docker from container to host
 Alexander
                          Манько
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Alexander
                          Манько
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  extra_hosts: - "host.docker.internal:host-gateway" ?
ну попробуй запустить, для приложения не забудь указать что база находится тут host.docker.internal
Какая ось?
Обсуждают сегодня