Tag: docker compose

在Docker容器中连接本地的psql db和web app

我是docker工人,了解基本的东西。 我有我的本地Ubuntu服务器上安装postgresql,我想连接它的泊坞窗容器内的Web应用程序。 我应该采用什么样的设置来允许?

docker运行很长时间使caching连接超时

我用docker-compose构build了我的应用程序,一个容器是数据库使用mariadb图像,一个运行Laravel的php(我为我的应用程序安装了php-memcached或php-redis扩展),一个构build在redis docker镜像上的caching容器。 一开始一切都很顺利,但是运行2或3天后,我得到了phpexception:连接超时[tcp:// redis:6379]; 我监视CPU和内存和networking使用zabbix自己安装在主机服务器,但我得到这些错误: 监视CPU 监视内存 我将caching容器更改为memcached,并且两三天内发生同样的事情,我发现解决此问题的唯一方法是重新启动系统,并且可以在得到相同错误之前再运行两三天。 你知道这是不可能重新启动系统的生产,所以任何人都可以build议我在哪里解决问题,而不是重新启动系统? 谢谢!

这个Docker / NGINX / Node设置实际上是否按照预期进行了负载平衡?

我正在使用Docker / Node / Nginx设置一个Web服务器。 我一直在玩Docker-compose中的设置,并提出了两个工作解决scheme – 但在负载平衡方面,其中一个可能太好了,无法成立(因为它似乎允许我通过没有创build额外的图像/容器)。 我正在寻找validation,如果我所看到的实际上是合法的,多个图像等不是负载平衡的要求。 解决scheme1(无附加图像): 泊坞窗,compose.yml version: '3' volumes: node_deps: services: nginx: build: ./nginx image: nginx_i container_name: nginx_c ports: – '80:80' – '443:443' links: – node restart: always node: build: ./node image: node_i container_name: node_c command: "npm start" ports: – '5000:5000' – '5001:5001' – '5500:5000' – '5501:5001' volumes: – ./node:/src […]

Docker(组合)安装nodejs打破了NPM

我需要使用nginx和nodejs的容器,所以我拿nginx容器并安装节点: FROM nginx ENV DEBIAN_FRONTEND noninteractive WORKDIR /usr/src/app VOLUME /usr/src/app RUN apt-get update && \ apt-get install -y apt-utils && \ apt-get install -y –no-install-recommends curl sudo wget nano && \ curl -sL https://deb.nodesource.com/setup_6.x | bash – && \ apt-get install -y nodejs git build-essential && \ whereis npm && \ npm install grunt grunt-cli […]

Dockerizing Nodejs APP(平滑重启,ssl)

我正在试图dockerize一个NodeJS应用程序。 我已经按照这个教程https://nodejs.org/en/docs/guides/nodejs-docker-webapp/ 这很容易,工作。 但是我需要扩展一些function。 我的基础设施将不包含只有nodejs容器,它将有更多的容器,通过docker docker-compose文件的帮助链接在一起。 我需要的 我将为我的应用程序使用https 。 所以我需要在将要挂载到主机的文件夹中提供我的SSL证书。 但我想我需要重新启动一个快速的应用程序才能应用更改。 我该如何处理这个用例呢? 如果我有其他容器运行。 我需要能够重新启动nodejs应用程序,而无需重新启动一个容器。 你能否build议正确的策略,以便顺利实施?

在Docker容器中恢复本地pg_dumpall

我浏览了网页,找不到适合我需求的解决scheme。 我一直在使用Flask而不是Django松散地学习这个教程。 我有docker-compose build命令工作没有错误,然后docker-compose up命令也工作。 后者我得到name_of_container_data_1 exited with code 0和一群gunicorn工人超时name_of_container_data_1 exited with code 0 。 没有任何服务。 这个问题可能与postgres数据库,但还不确定… 我做了什么 pg_dumpall -c -U postgres > dump_ date +%d-%m-%Y“ ”%H %M_%S .sql from my local postgres instance docker-compose.yml(只是其中的一部分) postgres: image: postgres:latest volumes_from: – data volumes: – ./postgres/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d – ./backups/postgresql:/backup expose: – "5432" data: restart: always image: alpine volumes: […]

我怎样才能使docker容器连接服务器主机http代理?

我configuration了privoxy 。 我可以通过“ http://127.0.0.1:8118 ”访问网页。 export http_proxy=http://127.0.0.1:8118/ export https_proxy=https://127.0.0.1:8118/ 它与主机服务器一起工作。 我想让泊坞窗容器使用主机代理访问互联网。 我尝试了很多方法。 问题是,我怎么能得到在docker集装箱主机IP? 我努力了 — version: "2" services: slack: container_name: slack restart: always build: context: . dockerfile: ./Dockerfile volumes_from: – flask networks: – dockernet depends_on: – redis tty: true env_file: – ./marvin/.env command: python3 slack.py networks: dockernet: driver: bridge ipam: config: – subnet: 192.168.0.0/24 gateway: […]

如何访问docker-compose中的私有GitHub存储库?

这是我的docker-compose.yml文件: version: '2.1' services: users-db: container_name: users-db build: git@github.com:lukalopusina/flask-microservices-users.git#master:project/db volumes: – '~/.ssh/github:/root/.ssh/id_rsa' ports: – 5435:5432 # expose ports – HOST:CONTAINER environment: – POSTGRES_USER=postgres – POSTGRES_PASSWORD=postgres healthcheck: test: exit 0 这是Dockerfile: FROM postgres # Disable checking for known_hosts (maybe not working) RUN mkdir /root/.ssh && echo "StrictHostKeyChecking no " > /root/.ssh/config # run create.sql on init […]

docker中的pg_dump服务器和pg_dump版本不匹配

当我在railsApp容器中运行命令psql –version ,得到了9.4.12 ,当我在postgres容器中运行相同的命令时,得到了9.6.2 。 我怎样才能让版本匹配? 当我尝试在Rails应用程序上执行pg_dump sql导入时,出现以下错误。 pg_dump: server version: 9.6.2; pg_dump version: 9.4.12 pg_dump: aborting because of server version mismatch rails aborted! 这是我的Docker-compose.yml文件: version: "2.1" services: railsApp: build: context: ./ ports: – "3000:3000" links: – postgres volumes: – .:/app postgres: image: postgres:9.6 ports: – "5432:5432" volumes: – ./.postgres:/var/lib/postgresql Dockerfile: FROM ruby:2.3.3 # setup […]

在使用docker-sync时合并容器文件

我正在使用docker-sync加速我的node.js应用程序上的开发环境文件更新。 现在我试图通过将package.json移动到映像并在创build映像时运行npm install来cachingnpm install命令。 Dockerfile: ADD ./package.json /app/user/ RUN npm install 然后,我使用以下configuration进行docker-sync: 泊坞窗,sync.yml version: "2" options: verbose: true syncs: appcode-rsync-sync: src: './' sync_host_ip: 'auto' sync_host_port: 10872 sync_strategy: 'rsync' sync_excludes: [ 'public/lib/', 'public/dist/', 'node_modules/'] 这里是docker-compose.yml : services: web: build: . ports: – "3000:3000" volumes: – appcode-rsync-sync:/app/user:nocopy command: grunt volumes: appcode-rsync-sync: external: true 问题是npm install将所有必需的软件包安装在node_modules , public_lib […]