Tag: 泊坞窗

pipe理必须与TLS通信的Docker容器的证书/密钥的最佳方法是什么?

我将我的应用程序移动到Docker,而我不知道如何处理pipe理证书/密钥。 在单个主机中,我有两个Docker容器,必须通过TLS监听/通信到多个客户机。 在docker之前,我有一个服务器密钥和自签名证书,而我的客户使用自签名证书与服务器应用程序通信。 但是现在他们是分开的docker集装箱,什么是正确的方法? 我是否将证书/密钥推入容器中的目录? 如果是这样,那么我的dockerfile将需要复制证书/密钥,我不希望密钥成为检查图像的一部分。 (安全) 或者,我是否使用VOLUME并在主机上持有密钥/证书? 我试过,但容器根用户无法看到私钥,只读的主机root用户。 什么是真正正确的方法来做到这一点? 谢谢

haproxy / docker未启用侦听程序(检查“绑定”指令)! 退出

我试图与docker运行haproxy。 我遵循这里的指示: https://hub.docker.com/_/haproxy/ 我能够build立docker图像,但尝试运行后。 运用 docker run -d –link another_container:another_container –name mc-ha -v haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro my_own_haproxy:latest 我得到这个错误: [ALERT] 298/054910 (1) : [haproxy.main()] No enabled listener found (check for 'bind' directives) ! Exiting. 我search了它,但我发现的唯一的东西是ha代理的源代码。 这是我的haproxy.cfg global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock mode 660 level admin stats timeout 30s user haproxy […]

如何在Docker中备份数据库

我正在运行我的应用程序使用docker-compose与下面的yml文件 postgres: container_name: postgres image: postgres:${POSTGRES_VERSION} volumes: – postgresdata:/var/lib/postgresql/data expose: – "5432" environment: – POSTGRES_DB=42EXP – POSTGRES_USER=${POSTGRES_USER} – POSTGRES_PASSWORD=${POSTGRES_PASSWORD} node: container_name: node links: – postgres:postgres depends_on: – postgres volumes: postgresdata: 正如你在这里看到的,我使用一个named volume来pipe理postgres状态。 根据官方文档,我可以像下面那样备份一个音量 docker run –rm –volumes postgresdata:/var/lib/postgresql/data -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata 其他一些教程build议我使用postgres提供的pg-dump函数进行备份。 pg_dump -Fc database_name_here > database.bak 我想我将不得不去进入postgres容器执行此function,并将备份目录挂载到主机。 一种方法比另一种更好吗?

如何使用azkpipe理系统依赖关系?

我正在使用azk ,我的系统依赖于额外的软件包。 我可以安装它们(因为我使用的是基于Ubuntu的镜像): apt-get -yq update && apt-get install -y libqtwebkit-dev qt4-qmake 我可以添加这个步骤来提供? 在Azkfile.js ,它看起来像: // … provision: [ "apt-get -yq update", "apt-get install -y libqtwebkit-dev qt4-qmake", "bundle install –path /azk/bundler", "bundle exec rake db:create", "bundle exec rake db:migrate", ] 或者最好创build一个新的Docker镜像?

无法访问http:// ip:8443上的OpenShift控制台

我在CentOS7上安装了OpenShift Version 3。 我遵循官方文档: https : //docs.openshift.org/latest/admin_guide/install/prerequisites.html#configuring-docker-storage 方法1(Docker): https : //docs.openshift.org/latest/getting_started/administrators.html#installation-methods 我select在Docker容器中安装OpenShift。 我必须做的最后一个命令是这样的:我使用来自Docker Hub的图像在Docker容器中启动服务器: $ docker run -d –name "openshift-origin" –net=host –privileged \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /tmp/openshift:/tmp/openshift \ openshift/origin start 这个命令: 启动OpenShift监听所有接口(0.0.0.0:8443), 启动监听所有接口(0.0.0.0:8443)的Web控制台, 启动一个etcd服务器来存储持久数据,并且 启动Kubernetes系统组件。 $ sudo docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d3f023085328 openshift/origin "/usr/bin/openshift 2 days ago Up […]

如何在App Engine中灵活地更改/ dev / shm的大小

如何在App Engine Flexible应用程序中更改共享内存文件夹/dev/shm的大小? 默认情况下,它被设置为64M,太低而无法运行多个应用程序(例如,chrome)。 我没有看到任何改变它的方法。 如果您有权访问docker run命令 ,则有方法可以更改它,但启动应用程序引擎灵活应用程序时,我们没有此类访问权限。

运行Docker作为Conemu任务

我想通过创build一个任务,使用git bash打开Docker start.sh文件,使docker运行在ConEmu上。 由于通常dockerterminal指向"C:\Program Files\Git\bin\bash.exe" –login -i "C:\Program Files\Docker Toolbox\start.sh" ,有什么办法可以做一个ConEmu要完成这个任务吗? 所以像这样的东西:

泊坞窗中的慢代码覆盖

我在Docker容器中遇到了PHP代码覆盖报告的问题。 比如同样的testing用 codeception run unit 得到我(72.79s),但覆盖国旗 codeception run unit –coverage –coverage-html 它让我(4,412.27s)。 一些testing刚刚粉碎: 错误:来自Docker引擎的错误响应。 在codeception.yml包含部分我只设置* .php文件和文件夹的代码。 我的系统:Codeception 2.3.3,Docker EDGE 17.06.0-rc1-ce-mac13,Yii1框架。 我试图通过docker https://docs.docker.com/docker-for-mac/osxfs-caching/使用新的性能调优,它有一点帮助,但结果已经改善。

在Docker构build文件中使用自定义Cert设置Jetty Runner

我目前正在创build一个Docker文件来构build我们的java应用程序,而且我遇到了一个问题,就是不得不使用自定义的.cert键来使用logstash-logback-forwarder来loginSSL,而webapp本身也需要做SSL连接(连接到SOAP SSL)。 事情是,我可以loginSSL,并且Web应用程序可以安全地使用SOAP API(它始终能够做到这一点),但是我不能同时做到这一点。 对于初学者来说,这里是我的docker构build文件的相关部分 ADD logstash-forwarder.crt /root/logstash-forwarder.crt RUN (cd /root && /usr/java/latest/bin/keytool -import -file logstash-forwarder.crt -alias logstash -storepass SOMEPASS -noprompt -keystore logstash.keystore) 这添加了crt文件,然后使用keytool导入到keyStore中。 我正在使用logstash-logback-forwarder,它使用标准的SSLSocketFactory (即https://github.com/logstash/logstash-logback-encoder/blob/master/src/main/java/net/logstash/logback/appender/ SSLLogstashTcpSocketAppender.java ) 然后我运行我的java网站(通过jetty-webrunner),使用这个命令 CMD java -Dlogback.configurationFile=/root/logback.xml \ -Djavax.net.ssl.keyStorePassword=SOMEPASS \ -Djavax.net.ssl.keyStoreType=pkcs12 \ -Djavax.net.ssl.trustStoreType=jks \ -Djavax.net.ssl.trustStore=logstash.keystore \ -Djavax.net.ssl.trustStorePassword=SOMEPASS \ -server -ea -XX:+UseConcMarkSweepGC \ -XX:+CMSClassUnloadingEnabled \ -Xmx2048M -jar jetty-runner-9.2.3.v20140905.jar \ –port 8080 […]

Postgresdocker集装箱与托pipe解决scheme

我习惯以“传统”的方式构buildweb应用程序,但是我试图用docker来包裹我的头。 如果我在一个容器中运行postgres以及我的python web应用程序,这是否像启动一个数字海洋服务器并从头开始安装postgres一样? 如何使用docker中的postgres数据库来处理备份,容错等? 作为替代,我通常在Heroku或AWS上使用托pipe的postgres。 这不是解决了我在docker中托pipepostgres时遇到的很多问题吗? 开发人员是否确实在docker中运行postgres,或者他们通常喜欢使用外部托pipe服务吗?