Tag: docker compose

Docker Redis Sentinel ip地址问题与docker堆栈部署

我正在尝试使用Docker(17.06.1-ce-win)设置一个基于哨兵的Redis集群,并且在使用IP地址时遇到了一个问题 docker stack deploy 这是我docker-compose.yml (基于这个存储库 ) version: "3.2" services: redismaster: image: redis:3 ports: – 6381:6379 redisslave: image: redis:3 command: redis-server –slaveof redismaster 6379 ports: – 6382:6379 depends_on: – redismaster sentinel1: image: 127.0.0.1:5000/sentineldemo build: sentinel depends_on: – redismaster – redisslave ports: – 26379:26379 sentinel2: image: 127.0.0.1:5000/sentineldemo depends_on: – redismaster – redisslave ports: – 26380:26379 sentinel3: […]

与docker的Postgres失去连接,并获得文件系统的问题

我正在使用Docker 17.06.0和Docker 17.06.0 docker-compose 1.14.0来使用Postgres 9.4.1 。 当我使用它的时候,经常会发生连接丢失的情况,在日志中我得到这个: LOG: invalid length of startup packet LOG: could not send data to client: Broken pipe FATAL: connection to client lost ERROR: could not open file "base/1/11943": No such file or directory FATAL: could not open file "base/12141/11943": No such file or directory 重新启动容器后,它没有得到任何改善: postgres cannot access the […]

在Visual Studio 2017+中debugging多个Web Docker容器

我有一个包含两个dockerized Web项目的解决scheme。 我有我的docker-compose文件设置来部署这两个项目。 这两个项目都被设置(在他们各自的项目中),以便在debugging时启动浏览器。 当我点击F5进行debugging时,它始终如一地启动一个Web浏览器,指向这两个项目中的一个,而不是另一个。 它也不是select我们通常喜欢推出的那个。 在debugging包含多个容器的Docker解决scheme时,有没有办法控制有多less项目以及哪个项目启动浏览器窗口?

使用Tomcat和PostgreSQL在Docker上部署应用程序

我有一个testApp.war,我想通过docker 部署在Tomcat上(docker在10.0.2.157上)。 我的testApp只能用postgres DB和指定的用户testUser和密码testUserPasswd正常工作。 我build立了这样一个结构: . ├── db │ ├── Dockerfile │ ├── pg_hba.conf │ └── postgresql.conf ├── docker-compose.yml └── web ├── context.xml ├── Dockerfile ├── software │ └── testApp.war └── tomcat-users.xml 所有这些文件的内容附在下面。 我用命令启动我的容器: docker-compose up -d 但是,当我去webbrowser上的Tomcat( http://10.0.2.157:8282/manager/html ),并尝试启动我的testApp,我得到: HTTP状态404 – 未find types状态报告 消息/ testApp / 描述原始服务器没有find目标资源的当前表示,或者不愿意透露目标资源的存在。 Apache Tomcat / 8.5.20 我做错了什么? 你可以帮我吗? DB […]

Mongo DB:消息超出了允许的最大消息大小

¡嗨! 我刚开发的RoR应用程序与MongoDB一起工作,并正常工作。 我尝试了几个HTTP请求到邮递员的应用程序,也工作得很好! 当我使用Docker部署应用程序时,出现了任何请求之后出现的MongoDB错误: MONGODB | 消息超出了允许的最大消息大小 最大值是50331648. ms_notifications_1 | 2017-09-29 21:16:48 +0000:HTTPparsing错误,格式错误request():#Puma :: HttpParserError:HTTP格式无效,parsing失败。 我会很感激如果有人有这个错误的解决scheme。 谢谢! 我的撰写文件: version: '2' services: ms_notifications_db: image: mongo:latest container_name: "rancher-node1" ` environment: – MONGO_DATA_DIR=/data/db – MONGO_LOG_DIR=/dev/null volumes: – ./data/db:/data/db ports: – "27017:27017" command: mongod –smallfiles ` ms_notifications: build: . command: bash -c " rm -f tmp/pids/server.pid && bundle exec […]

docker和docker-composose中的多个数据库

我有一个由两个主要java应用程序组成的项目,这些应用程序使用八个postgres数据库,那么在docker-compose中有没有一种方法来构build八个不同的数据库,以便每个数据库拥有不同的所有者和密码? 我可以在docker-compose中做这个吗? 例如 : services: postgresql: build: db/. ports: – "5432:5432" environment: – POSTGRES_DB=database1 – POSTGRES_USER=database1 – POSTGRES_PASSWORD=database1 我知道我可以把所有的.sql文件放在docker-entrypoint-initdb.d中,postgres会自动创build它们,但是我怎么声明.sql文件在什么数据库中? Tnx,Tom

如何更改docker-compose中的默认弹性search密码?

Elasticsearch的官方 docker-compose.yml 镜像文档提供了这个docker-compose.yml示例: version: '2' services: elasticsearch1: image: docker.elastic.co/elasticsearch/elasticsearch:5.6.3 container_name: elasticsearch1 environment: – cluster.name=docker-cluster – bootstrap.memory_lock=true – "ES_JAVA_OPTS=-Xms512m -Xmx512m" ulimits: memlock: soft: -1 hard: -1 mem_limit: 1g volumes: – esdata1:/usr/share/elasticsearch/data ports: – 9200:9200 networks: – esnet elasticsearch2: image: docker.elastic.co/elasticsearch/elasticsearch:5.6.3 environment: – cluster.name=docker-cluster – bootstrap.memory_lock=true – "ES_JAVA_OPTS=-Xms512m -Xmx512m" – "discovery.zen.ping.unicast.hosts=elasticsearch1" ulimits: memlock: soft: -1 hard: -1 […]

我可以自动更改elasticsearch docker容器默认密码`changeme`吗?

在新创build容器后手动运行以下命令是更改elasticsearch X-pack默认密码changeme的唯一方法?( 参考 ): docker exec -it elasticsearch curl -XPUT -u elastic 'elasticsearch:9200/_xpack/security/user/elastic/_password' -H "Content-Type: application/json" -d '{ "password" : "somePassword" }' 是否有可能在Dockerfile docker-compose或Dockerfile自动Dockerfile ? 当容器是新创build的时候,我只需要它运行一次。 我已经尝试docker-compose的command键,但它不会等待容器完全开始运行。 我也试过Dockerfile COPY ./docker-misc/docker-entrypoint.sh ./ RUN chmod +x ./docker-entrypoint.sh ENTRYPOINT ["./docker-entrypoint.sh"] 但每当容器重新启动时,我都不需要运行它。 我只需要它在弹性search图像新创build时运行。

无法连接Kafka到Zookeeper

从docker-compose我得到了这个yml: version: '2' services: zookeeper: container_name: zookeeper image: confluentinc/cp-zookeeper:3.1.1 ports: – "2080:2080" environment: – ZOOKEEPER_CLIENT_PORT=2080 – ZOOKEEPER_TICK_TIME=2000 kafka: container_name: kafka image: confluentinc/cp-kafka:3.1.1 ports: – "9092:9092" environment: – KAFKA_CREATE_TOPICS=Topic1:1 – KAFKA_ZOOKEEPER_CONNECT=192.168.99.100:2080 – KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.99.100:9092 depends_on: – zookeeper schema-registry: container_name: schema-registry image: confluentinc/cp-schema-registry:3.1.1 ports: – "8081:8081" environment: – SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL=192.168.99.100:2080 – SCHEMA_REGISTRY_HOST_NAME=localhost depends_on: – zookeeper – kafka 当我站起来这个docker时,控制台输出结束于: schema-registry […]

如果重buildDocker镜像,如果它的依赖远程git仓库更新?

我有一个从远程git仓库克隆的依赖项,然后构build并插入到我的应用程序中: RUN git clone git@remote_repo.git . RUN build 当然,这个回购是并行开发的,并不时更新。 有没有办法检查是否有docker-compose build运行期间有新的变化,如果需要重build它?