Tag:

Docker撰写JVM参数

我编写了一个java应用程序,它接受一个环境variables,它需要一个参数来为JWT令牌salt键设置一个键。 有没有办法让我在Docker Compose中传递命令variables? java -Djava.security.egd=file:/dev/./urandom -jar /user-profile-api.jar –key=blah 然后运行Docker镜像 docker run -p 8080:8080 docker_image –key=blah

Django应用程序服务器挂起/不会在Docker Compose中启动

我试图在Docker Compose中启动一个简单的Django应用服务器,并与Postgres容器配对。 它像我所期望的一样,启动入口点脚本,但它似乎从来没有真正运行Django应用程序服务器(这应该是最后一步,并保持运行)。 我知道它运行入口点脚本,因为迁移步骤运行。 应用程序服务器从不输出任何预期的输出,而8000端口从不响应。 如果有问题,我正在使用Docker for Mac(stable)。 我的Django应用程序容器的Dockerfile: FROM ubuntu:16.04 COPY my_app /my_app RUN apt-get update \ && apt-get install -y python3 python3-psycopg2 python3-pip RUN apt-get install -y nodejs npm WORKDIR /my_app RUN pip3 install -r requirements.txt RUN npm install bower RUN python3 manage.py bower install RUN python3 manage.py collectstatic –no-input EXPOSE 8000 COPY […]

当docker容器closures时,MySQL数据库不见了

我是docker世界的新手。 我想将一些软件包安装到docker镜像中。 所以我采取了Ubuntu:14.04 docker镜像,并在那里安装了MySQL服务器。 然后做了一些与它的作品。 一旦我退出docker镜像并提交它。 但是,一旦我开始docker集装箱,创build的数据库已经消失了。 这是什么原因?

如何正确设置数据卷容器?

我想设置一个数据卷容器与另一个LAMP容器一起工作,但我开始与Docker一起工作,所以我有一些疑虑。 所以我将运行两个容器,我们将其命名为(仅作为示例): 灯容器 数据容器 我知道一次运行多个容器的唯一方法是使用Docker Compose,但我不知道如何设置compose.yml文件。 让我们说lamp-container有它存储数据的以下目录: /data/www # meant to contain web content /data/www/default # root directory for the default vhost /data/logs/ # Nginx, PHP logs /data/tmp/php/ # PHP temp directories 我想将它们分别映射到/home/<username>/container_files (这是运行docker的主机上的本地目录)下的主机上的本地目录。 例如: /data/www => /home/<username>/container_files/data/www /data/www/default => /home/<username>/container_files/data/www/default /data/logs/ => /home/<username>/container_files/data/logs /data/tmp/php/ => /home/<username>/container_files/data/php 任何一点都可以用compose.yml示例文件指向正确的方向? 我已经阅读文档,但对我来说很困惑,因为我通常使用虚拟机,并在许多方面与容器不同。 注意:我应该补充说,这是一个主机中的一个用户而不是一个主机中的多个用户。 所以每个想要使用这个设置的人都应该有自己的主机下的设置。

Docker Hub API v2令牌authentication问题

目前,我正在研究一个非常简单的Docker容器编排器版本,我必须能够从公共Docker Hubregistry中获取图像摘要。 我想用Docker Registry API v2来达到这个目的。 我正在尝试使用以下API调用获取授权令牌: curl https://auth.docker.io/token?service=index.docker.io&scope=repository:alpine:pull …我收到如下回复: {"token":"eyJhbGciOiJFUzI.eyJhY2Nlc3MiOltdLCJhdWQiOiJpbmRleC5kb2NrZXIuaW8iLCJleHAiOjE0NzQ1NDcyODMsImlhdCI6MTQ3NDU0Njk4MywiaXNzIjoiYXV0aC5kb2NrZXIuaW8iLCJqdGkiOiIzVTdCazF4dm9CLVA0MGJWVF9JSiIsIm5iZiI6MTQ3NDU0Njk4Mywic3ViIjoiIn0.516fS692WGHNi5Sc44iB8OFSLairrM6n1zNvVo5KXAxlsxsP4rE7VDmW5d0YqvTYeKfZAYIi9yEptx4xJlQ6DA"} 似乎一切都没问题,我试图使用获得的令牌为我的下一个API调用: curl -i -H "Authorization: Bearer eyJhbGciOiJFUzI.eyJhY2Nlc3MiOltdLCJhdWQiOiJpbmRleC5kb2NrZXIuaW8iLCJleHAiOjE0NzQ1NDcyODMsImlhdCI6MTQ3NDU0Njk4MywiaXNzIjoiYXV0aC5kb2NrZXIuaW8iLCJqdGkiOiIzVTdCazF4dm9CLVA0MGJWVF9JSiIsIm5iZiI6MTQ3NDU0Njk4Mywic3ViIjoiIn0.516fS692WGHNi5Sc44iB8OFSLairrM6n1zNvVo5KXAxlsxsP4rE7VDmW5d0YqvTYeKfZAYIi9yEptx4xJlQ6DA" https://index.docker.io/v2/alpine/manifests/latest …在这里我得到了什么: HTTP/1.1 401 Unauthorized Content-Type: application/json; charset=utf-8 Docker-Distribution-Api-Version: registry/2.0 Www-Authenticate: Bearer realm="https://auth.docker.io/token",service="registry.docker.io",scope="repository:alpine:pull",error="invalid_token" Date: Thu, 22 Sep 2016 12:27:54 GMT Content-Length: 138 Strict-Transport-Security: max-age=31536000 {"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":[{"Type":"repository","Name":"alpine","Action":"pull"}]}]} 有没有人有这样的想法为什么令牌authentication失败这样简单的stream程?

如何在docker中有“运行”命令 – 撰写类似于docker文件?

Docker文件 FROM elasticsearch:2 RUN /usr/share/elasticsearch/bin/plugin install –batch cloud-aws 从https://www.elastic.co/blog/elasticsearch-docker-plugin-management 有人可以帮我添加ES插件在docker-compose文件中吗? version: '2' services: nitrogen: build: . ports: – "8000:8000" volumes: – ~/mycode:/mycode depends_on: – couchdb – elasticsearch elasticsearch: image: elasticsearch:1.7.5 volumes: – ./elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml ports: – "9200:9200" – "9300:9300" 在上面的docker-compose中缺less的是插件的安装。 试过这个,但它运行在本地机器,而不是docker集装箱。 command: /usr/share/elasticsearch/bin/plugin install elasticsearch/elasticsearch-river-couchdb/2.6.0

Docker – 如何在docker-compose.yml中设置Apache + PHP

我使用这个来设置PHP的nginx: nginx: image: nginx:latest ports: – 8080:80 volumes: – ./code:/code – ./site.conf:/etc/nginx/conf.d/site.conf links: – php php: image: php:7-fpm volumes: – ./code:/code 但是Apache呢? 如何在docker-compose.yml中设置Apache + PHP? 遵循本指南 : version: '2' services: php: build: php ports: – "80:80" – "443:443" volumes: – ./php/www:/var/www/html 错误: ERROR: In file './docker-compose.yml' service 'version' doesn't have any configuration options. All top […]

安装特定版本的docker

我需要说明如何安装特定版本的docker(docker-engine)和docker-compose。 Docker版本必须是1.11.2。 Docker-compose版本必须是1.8.1。 我GOOGLE了,当我试图安装其中之一,例如docker1.11.2,然后docker撰写。 在这个docker更新到最新版本之后

Docker Swarm on Azure:正确使用docker4x / logger-azure

我正在Azure上使用预定义的Docker构build (Edge Channel),其中一个function是日志loggingfunction。 在pipe理器节点上使用docker ps进行检查我看到有这个editions_logger容器( docker4x / logger-azure ),它捕获所有容器日志并将其写入Azure存储帐户。 我如何直接使用这个容器来获取我的容器的日志? 我的第一个方法是直接从Azure门户find合适的存储并共享和下载日志。 第二种方法是使用docker exec -ti editions_logger cat /logmnt/xxx.log直接连接到容器docker exec -ti editions_logger cat /logmnt/xxx.log 运行docker service logs xxx抛出only supported with experimental daemon 所有的方法(不是第三个)似乎都相当复杂。 有没有更好的办法?

Docker-compose invalid bind mount spec“/ rootfs:ro”:无效的卷规范

我正在按照dockprom的安装步骤,但得到这个错误: 错误:对于pipe理员无法为服务pipe理程序创build容器:无效的绑定安装规范“/ rootfs:ro”:无效的卷规范:“/ rootfs:ro”错误:在启动项目时遇到错误。 我添加了环境variables“COMPOSE_CONVERT_WINDOWS_PATHS = 1”到docker-compose.yml,但是这没有帮助。 docker工人17.03.1-ce-win5(10743)windows 10 提前致谢 !