Tag: docker docker

如何在Postgres Docker容器中创build数据库?

我想在启动Postgres Docker镜像后创build一个数据库。 问题是如果我把我的数据库创build命令在我的docker-compose文件或者一个子dockerfile中,它会覆盖基本映像的命令来真正启动postgres – 所以我的psql没有启动服务器连接到。 例如: version: '2' services: db: command: bash -c "su – postgres -c '/usr/lib/postgresql/9.6/bin/psql -h 127.0.0.1 -p 6543 -U postgres -c \"create database dev;\"'" environment: – PGDATA=/pg – POSTGRES_PASSWORD=postgres – POSTGRES_USER=postgres image: postgres:9.6 ports: – '6543:5432' tmpfs: /pg 而图像文档并没有说明他们正在运行的启动Postgres的确切命令。 我试着把bash -c "postgres && …放在我的命令开头,但是它告诉我我不能以root身份启动Postgres。 我唯一可能的解决scheme是放弃docker-compose和dockerfile以支持bash脚本解决scheme,例如docker run postgres:9.6 psql -h postgres -U […]

Docker官方Tomcat镜像修改Server.xml并将jar添加到lib文件夹

我想在lib文件夹中添加MySQL jar文件,并且需要在tomcat官方tomcat镜像的tomcat conf文件夹的server.xml文件中添加一些JNDI设置。 但我不知道如何更改到tomcat的conf文件夹文件。 我正在使用下面的Dockerfile来build立tomcat映像 FROM openjdk:8-jre-alpine FROM tomcat ADD ./test.war /usr/local/tomcat/webapps/ RUN sh -c 'touch /usr/local/tomcat/webapps/test.war' VOLUME /usr/local/tomcat/webapps/ EXPOSE 8080 Docker撰写文件是 version: '2' services: app-tomcat: container_name: app-server-tomcat image: symserver:latest external_links: – app-mysql:app-mysql ports: – 8080:8080 environment: – "JAVA_OPTS=-Ddatabase.url=192.168.99.100" 我已经尝试COPY ./server.xml /usr/local/tomcat/conf/上面的文件,但我得到下面的错误。 docker-compose -f app.yml up ERROR: for xboard-tomcat No such image: sha256:34aefb95b68da96e5a5a6cb8b12bb85d926d9d1e5bea2c6c13d1ff9c00d4426d ←[31mERROR←[0m: Encountered […]

Docker撰写 – 没有拿起init命令中的转储文件?

我在基于Windows的docker enr中有以下语法。 但是当我运行 docker-compose up 它加载容器,但不加载转储文件位置作为入口点给予mysql进程的转储文件位置。 有任何想法吗 ? 下面是我的docker-compose.yml文件。 mysql: image: mysql:latest volumes_from: – data environment: MYSQL_ROOT_PASSWORD: yxxxxr MYSQL_DATABASE: career_xxx MYSQL_USER: career_xxx MYSQL_PASSWORD: Ixxx8; data: image: mysql:latest #image: mysql:5.6 #image: mysql:latest volumes: – ./.config/etc/mysql/dump:/docker-entrypoint-initdb.d command: "true"

Docker与rake资源组合 – 构build – 预编译

我试图设置我的应用程序在生产模式下运行,我遇到了一个问题,build立资产文件夹,特别是我的Dockerfile中的这一行: RUN bundle exec rake RAILS_ENV=production DATABASE_URL=postgresql://user:pass@127.0.0.1/dbname SECRET_TOKEN=dummytoken assets:precompile 数据库只是一个虚拟的行。 问题是,当它运行耙子似乎没有看到envvariables,并得到以下错误时,它初始化carrierwave.rb rake aborted! ArgumentError: Missing required arguments: aws_access_key_id, aws_secret_access_key /usr/local/bundle/gems/fog-core-1.42.0/lib/fog/core/service.rb:244:in `validate_options' /usr/local/bundle/gems/fog-core-1.42.0/lib/fog/core/service.rb:268:in `handle_settings' /usr/local/bundle/gems/fog-core-1.42.0/lib/fog/core/service.rb:98:in `new' /usr/local/bundle/gems/fog-core-1.42.0/lib/fog/core/services_mixin.rb:16:in `new' /usr/local/bundle/gems/fog-core-1.42.0/lib/fog/storage.rb:27:in `new' /usr/local/bundle/gems/carrierwave-0.11.2/lib/carrierwave/uploader/configuration.rb:83:in `eager_load_fog' /usr/local/bundle/gems/carrierwave-0.11.2/lib/carrierwave/uploader/configuration.rb:96:in `fog_credentials=' /mnt/hgfs/Projects/livingrecipe/config/initializers/carrierwave.rb:3:in `block in <top (required)>' /usr/local/bundle/gems/carrierwave-0.11.2/lib/carrierwave/uploader/configuration.rb:118:in `configure' /usr/local/bundle/gems/carrierwave-0.11.2/lib/carrierwave.rb:14:in `configure' /mnt/hgfs/Projects/livingrecipe/config/initializers/carrierwave.rb:1:in `<top (required)>' Theres多了几条线,但第一行说这一切和ENVvariables的aws_access_key_id和aws_secret_access_key似乎不会加载。 如果我运行这个没有试图预编译资产一切正常,但我需要预编译的资产,使其可见的nginx 我确实发现,为了解决这个问题,我可以用它们replaceENVvariables,这是有问题的代码: CarrierWave.configure do |config| config.fog_credentials = { provider: […]

Spark节点使用错误的IP地址进行通信(Docker)

我有一个使用Docker创build的Spark(DataStax企业)集群,使用docker-compose绑定在一起。 这仅用于本地开发目的。 容器在他们自己的dockernetworking中: 172.18.0.0/16 。 我在运行Docker工具箱的Mac上,我可以直接从我的机器上访问这些容器,因为我已经在172.18.0.0/16上手动添加了一个到172.18.0.0/16的路由,这是Virtualbox在Mac上提供的虚拟networking。 vboxnet0接口的我的一面有IP 192.168.99.1 。 docker机端有192.168.99.101 。 这一切都很好,主Web UI出现在172.18.0.2:7080 ,所有的节点都显示正确,他们的172.x IP地址(并继续这样做,如果我扩大通过例如docker-compose scale spark=5 )。 但是,当我提交工作时,例如: $SPARK_HOME/bin/spark-submit –master spark://172.18.0.2:7077 –class myapp.Main \ ./target/scala-2.10/myapp-assembly-1.0.0-SNAPSHOT.jar , 这是非常缓慢的(我认为由于重试),我看到这样的错误,直到它终于成功: 16/09/16 13:01:53 WARN TaskSetManager: Lost task 0.0 in stage 2.0 (TID 5, 192.168.99.101): org.apache.spark.storage.BlockFetchException: Failed to fetch block from 1 locations. Most recent failure cause: at org.apache.spark.storage.BlockManager$$anonfun$doGetRemote$2.apply(BlockManager.scala:595) […]

如何从Windows中的Docker容器访问“http:// localhost”?

我有一个在Docker中运行的Windows 10集合,这是docker-compose ps的输出: > docker-compose ps Name Command State Ports ————————————————————————————————————– db_mysql docker-entrypoint.sh mysqld Up 3306/tcp elk /usr/bin/supervisord -n -c … Up 0.0.0.0:81->80/tcp php71-fpm-nginx /config/bootstrap.sh Up 443/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:9001->9001/tcp 这是docker inspect的输出: > docker inspect php71-fpm-nginx [ { … "NetworkMode": "anotherlampdocker_default", "PortBindings": { "80/tcp": [ { "HostIp": "", "HostPort": "80" } ], "9001/tcp": [ { "HostIp": […]

Docker MongoDB:UserNotFound

我正在为Docker构build一个非交互式可configuration的MongoDB镜像,目前的目标是能够以编程方式从configuration文件加载auth用户。 我目前的问题是,尽pipe我可以成功地将用户添加到数据库,他们似乎不坚持通过构build过程,因此我的节点容器无法成功地对数据库进行身份validation。 以下是我的mongodb实例的主要dockerfile: FROM mongo:latest #Installing Node RUN apt-get update && \ apt-get install -y curl && \ curl -sL https://deb.nodesource.com/setup_6.x | bash – && \ apt-get install -y nodejs #Setting Up Mongo WORKDIR /var/www/smq COPY ./docker/mongo-setup.js mongo-setup.js COPY ./.config/mongo /var/www/.config/mongo RUN if [ -e /var/www/.config/mongo/mongod.conf ] ; then cp /var/www/.config/mongo/mongod.conf /etc/mongod.conf ; fi RUN […]

Tomcat docker-撰写运行的web应用程序

想知道是否有人试图使用docker-compose来运行tomcat并成功运行一个web应用程序。 我已经把下面的docker组成文件放在一起。 tomcat: image: bitnami/tomcat:latest environment: – TOMCAT_USERNAME=root – TOMCAT_PASSWORD=password links: – db:mysql ports: – 8585:8080 volumes: – ./tomcat:/bitnami/tomcat db: image: mariadb ports: – 3636:3306 environment: MYSQL_ROOT_PASSWORD: password phpmyadmin: image: phpmyadmin/phpmyadmin links: – db:mysql ports: – 8689:80 environment: MYSQL_USERNAME: root MYSQL_ROOT_PASSWORD: password PMA_HOST: mysql 容器都运行,我可以访问Apache的“Web应用程序pipe理器”,我已经部署了我的.war文件显示正在运行。 但是当我尝试从浏览器访问它时,我得到一个404 如果任何人能够帮助或指引我在正确的方向,将不胜感激。 对不起,应该指出我正在使用Thyme-leaf进行网页模板化处理,所以index.html文件位于resources / templates文件夹中,我有我的Controller映射到它。 我开始使用百里香叶之前也有这个问题。 一切都在当地环境中工作,而不是在容器中。

在Docker环境中使用Blackfire容器来剖析我的应用程序

今天我正在尝试将Blackfire添加到我的Docker堆栈中! 我遵循专用于Docker实现的Blackfire文档,容器设置正确,但我无法成功创build我的应用程序的第一个configuration文件。 这是一个Symfony堆栈。 我有一个PHP-FPM容器,以及一个启动命令的CLI容器。 NGINX容器是networking服务器。 我docker-compose.yml文件如下: — cli: container_name: my_app_cli build: cli volumes: – "./volumes/apps:/srv/apps" stdin_open: true tty: true environment: – PHP_EXTRA_CONFIGURE_ARGS=–with-ldap links: – mysql:mysql – redis:redis – rabbitmq:rabbitmq – web:web – blackfire:blackfire mysql: container_name: my_app_mysql build: mysql environment: – MYSQL_DATABASES=my_database – MYSQL_ROOT_PASSWORD=sgreat_password – MYSQL_HOST=localhost – MYSQL_PORT=33306 – MYSQL_USER=guest – MYSQL_PASSWORD=password – MYSQL_LOYALTY_DATABASE=my_database ports: # […]

无法安装windowsServerCore容器图像

我正在尝试使用下面的命令在我的WIndows 2016服务器上安装windowsServercore映像。 Install-containerImage WindowsServerCore 运行时得到下面的错误信息。 Install-ContainerOSImage : The term 'Install-ContainerOSImage' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. 发现从文章有一个工作 https://social.msdn.microsoft.com/Forums/en-US/fc571caf-af13-45ed-a021-cfcfcf532645/the-term-installcontainerosimage-is-not-recognized-as-the-name-of-a- cmdlet的上build造-构build- 14385?=论坛windowscontainers 在运行新文章中的命令的同时,获取不同的错误消息。 docker load -i nanoserver.tar.gz […]