我目前正在尝试将我的docker容器端口从容器映射到主机(boot2docker).最终目标是将这些端口映射到我的物理机器,但一次只能一步.
我的Vagrantfile目前看起来像:
Vagrant.configure("2") do |config|
config.vm.define "app1" do |a|
a.vm.provider "docker" do |d|
d.build_dir = "dockers/app1"
d.name = "app1"
d.ports << "8080:8080"
d.ports << "8443:8443"
d.volumes << "/vagrant/data/app1:/var/app1"
end
end
config.vm.define "app2" do |a|
a.vm.provider "docker" do |d|
d.build_dir = "dockers/app2"
d.name = "app2"
d.ports << "8081:8081"
d.link("app1:app1")
end
end
end
Run Code Online (Sandbox Code Playgroud)
当我运行vagrant up app1 --provider=docker容器正确旋转时,但是当我执行docker ps时,我可以看到端口尚未映射.
0.0.0.0:2222->22/tcp, 8080/tcp, 8443/tcp
Run Code Online (Sandbox Code Playgroud)
我正在使用VirtualBox,因此我使用GUI将我的物理机器移植8080到主机(boot2docker)8080.
我是码头工人的新手,所以我的问题可能非常幼稚/愚蠢.我们目前使用的应用程序需要在不同的平台上编译,使其在所需的平台上工作,主要是Linux和Window.所以我们需要在不同的平台上编译源代码(C/C++),并根据他们的操作系统为客户提供不同的可执行文件.我的问题是1.对于docker我是否有可能在所有平台上都有一个可执行文件?即我在一个平台上编译我的源代码,例如在Linux中,并使用docker发送可执行文件以在Window平台中运行
提前致谢
在Docker容器中运行PostgreSQL数据库时,官方PostgreSQL Docker Image 的文档指定应在环境变量中设置管理员密码,如:
docker run --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres
Run Code Online (Sandbox Code Playgroud)
对于那些不想在脚本中对纯文本密码进行硬编码的人,是否有更安全的选择需要考虑?
我正在使用a Dockerfile来构建我的图像,我在那里有一个命令:
RUN sysctl -w net.ipv4.route.flush=1
Run Code Online (Sandbox Code Playgroud)
但它无法使用以下错误构建映像:
Step 20 : RUN sysctl -w net.ipv4.route.flush=1
---> Running in 4d7302b56c53
sysctl: setting key "net.ipv4.route.flush": Read-only file system
Run Code Online (Sandbox Code Playgroud) 在跑步的时候
sudo docker pull centos
它提供连接超时,当它在代理已经设置http_proxy和https_proxy的代理后面运行.除了代理之外的原因是什么,虽然看起来代理问题.我检查了LINK但是徒劳无功,还有其他一些设置我想念,请告诉我.
2014/11/10 23:31:53获取https://index.docker.io/v1/repositories/centos/images:拨打tcp 162.242.195.84:443:连接超时
我有两个服务在单独的容器中运行,一个是grunt(应用程序)并运行端口9000,另一个是sails.js(服务器)运行端口1337.我想要尝试做的是让客户端应用程序连接服务器通过localhost:1337.这可行吗?谢谢.
我正在尝试在Windows 8.1上设置Docker .我正在遵循这个指南:https://docs.docker.com/installation/windows/#installation它似乎很好,直接...除了它不适合我.
安装通过好吧.然后我运行Boot2Docker Start,它说它正在初始化然后关闭命令行窗口.一些样本输出:
C:\Program Files\Boot2Docker for Windows>docker version
Client version: 1.6.2
Client API version: 1.18
Go version (client): go1.4.2
Git commit (client): 7c8fca2
OS/Arch (client): windows/amd64
FATA[0000] Get http:///var/run/docker.sock/v1.18/version: dial unix /var/run/doc
ker.sock: An address incompatible with the requested protocol was used.. Are you
trying to connect to a TLS-enabled daemon without TLS?
Run Code Online (Sandbox Code Playgroud)
_
C:\Program Files\Boot2Docker for Windows>boot2docker.exe delete
C:\Program Files\Boot2Docker for Windows>boot2docker.exe download
Latest release for github.com/boot2docker/boot2docker is v1.6.2
Downloading boot2docker …Run Code Online (Sandbox Code Playgroud) 在OS X上.
我试图通过boot2docker在docker容器中运行mysql,通过/var/lib/mysql在主机上安装卷,这样我就可以拥有持久的mysql数据.我计划将来使用仅数据容器,但是现在我正在尝试使用此选项.
我使用以下命令来运行容器:
docker run -v /Users/yash/summers/db:/var/lib/mysql -i -t 'image name'
该/Users/yash/summers/db文件夹已经存在.
我正面临着这方面的问题.使用命令行,我能够访问该目录,创建/删除新文件,但是当我运行时
service mysql start,我收到以下错误:
150528 15:43:43 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
150528 15:43:43 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.
150528 15:43:43 [Note] /usr/sbin/mysqld (mysqld 5.5.43-0ubuntu0.14.04.1) starting as process 909 ...
150528 15:43:43 [Warning] Setting lower_case_table_names=2 because file system for /var/lib/mysql/ …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过docker工具箱为windows主机上的devlopement环境创建一个docker dev工具容器,但是我在运行npm install命令时遇到了一些麻烦.它在Linux主机上工作正常,但在Windows主机上我收到以下错误:
npm ERR! Linux 4.1.13-boot2docker
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v5.5.0
npm ERR! npm v3.3.12
npm ERR! path /var/www/site/.npm/gulp/3.9.0/package.tgz.e87c24357cd6065ee71ce44c6f23673b
npm ERR! code ETXTBSY
npm ERR! errno -26
npm ERR! syscall rename
npm ERR! ETXTBSY: text file is busy, rename '/var/www/site/.npm/gulp/3.9.0/package.tgz.e87c24357cd6065ee71ce44c6f23673b' -> '/var/www/site/.npm/gulp/3.9.0/package.tgz'
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! <https://github.com/npm/npm/issues>
npm ERR! Linux 4.1.13-boot2docker
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v5.5.0
npm …Run Code Online (Sandbox Code Playgroud) 我试图使用Minikube进行本地kubernetes开发.我已经设置了docker环境,以便按照建议使用在提供的Minikube VM(boot2docker)中运行的docker守护程序:
eval $(minikube docker-env)
Run Code Online (Sandbox Code Playgroud)
它设置了这些环境变量:
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/home/jasonwhite/.minikube/certs"
Run Code Online (Sandbox Code Playgroud)
当我尝试从私有docker存储库中提取图像时:
docker pull oururl.com:5000/myimage:v1
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Error response from daemon: Get https://oururl.com:5000/v1/_ping: x509: certificate signed by unknown authority
Run Code Online (Sandbox Code Playgroud)
看来我需要以某种方式添加一个受信任的ca根证书,但到目前为止我的尝试都没有成功.
我可以使用我们的ca根证书使用curl命中存储库:
curl --cacert /etc/ssl/ca/ca.pem https://oururl.com:5000/v1/_ping
Run Code Online (Sandbox Code Playgroud) boot2docker ×10
docker ×10
c++ ×1
dockerfile ×1
kubernetes ×1
node.js ×1
npm ×1
postgresql ×1
sails.js ×1
vagrant ×1
vagrantfile ×1
x509 ×1