我从EXPOSE 22中使用EXPOSE 22的图像docker create了一个容器( Dockerfile 我通过docker start <container name or ID>启动它,并通过ssh访问它。 我现在需要公开一个运行在这个容器中的服务的一个端口。 我不能重新创build它,它必须改变其启动参数,以暴露额外的端口。 这可能吗? 我希望docker start将允许docker create或docker run相同的参数,但事实并非如此。 注:我知道docker的哲学是创造短暂的容器 。 这是一个生活中的事实,我必须处理这个高度定制的容器(而不是重新创build它)
我正尝试在Ansible的Docker容器中安装GlusterFS。 我有一个错误,所以我试图直接安装在容器中,但我有同样的错误(所以Ansible不是问题): # apt-get install glusterfs-server Reading package lists… Done Building dependency tree Reading state information… Done glusterfs-server is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded. 1 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you […]
我怀疑这个问题的答案是否定的,因为FROM命令在文件中首先(在任何ENV语句之前),但是你能参数化一个docker容器创build的基础图像的版本吗? 例如 FROM image-name:4.6.${patchVersion} 我看这个的原因是为了支持CI / CD。 我已经分离了构build容器和部署容器,部署容器的patchVersion是由构build生成的。 我也想这样生成构build容器的补丁号,然后从部署容器中引用它
我试图构build一个Apache-PHP + MySQL + PHPMyAdmin实体环境而没有成功。 我使用这些文件尽可能简化我的项目: test-docker $ ls -la total 24 drwxrwxr-x 2 david david 4096 janv. 18 11:01 . drwxrwxr-x 20 david david 4096 janv. 18 10:59 .. -rw-rw-r– 1 david david 457 janv. 18 11:01 docker-compose.yml -rw-rw-r– 1 david david 96 janv. 18 11:01 Dockerfile -rw-rw-r– 1 david david 214 janv. 18 […]
我们在swarm集群中获得了3个主机,并且在这个集群中部署了一个Web应用程序。 Web应用程序在任何时候都只能运行在一台主机上。 如果一个主机死亡,该Web应用程序将被移动到另一个主机。 Docker将负责将您的请求路由到Web应用程序,无论您的请求命中哪个主机。 为了确保我们总能find正在运行的主机,我们虽然使用Nginx是前端的。 我们将在Nginx上创build一个虚拟主机,它将代理请求发送给Docker群。 我们有两个办法。 答:我们只需在主机上进行“循环”请求。 这是一个简单的方法。 我们将使用Nginx在失败时提供服务。 但是,即使Nginx从主机1得到500错误,也可能是Web应用程序从主机3返回了500错误.Nginx会错误地认为服务在主机1上失败,并将该主机上的服务取出。 B.我们会把所有的要求都指向群领导。 我们不使用Nginx来在主机间进行负载平衡。 我们只需将所有请求发送到Docker Swarm领导者(通过configurationNginx的各种脚本来完成)。 这样,我们就不会做“双重”的负载均衡(Nginx和Docker Swarm) – 但是所有的stream量都只能通过Docker Swarm的领导。 一方面,解决schemeA简单易懂,但也会增加双重负载平衡的复杂性。 第二种解决scheme可能会更加复杂,因为它不太标准,但也可能让事情更容易理解。 我们应该从纯粹的技术angular度来select哪种方法?
我最近安装了mongodb双连接器,以便使用Tableau来可视化我的数据,我成功地将它安装在使用debian映像的docker容器中。 连接器成功访问我的远程mongo实例,并生成了适当的模式。 我试图连接到我的容器,并安装了一个MySQL客户端来检查连接器是否工作,这很好: 结果 但是,当我退出容器,并从我的主机尝试,这里是我得到的(我把3307容器的端口映射到我的9015主机端口) $ mysql –host localhost –protocol tcp –port 9015 ERROR 2013(HY000):在'读取初始通信数据包'时丢失与MySQL服务器的连接,系统错误:2 我已经尝试了不同的MySQL客户端版本,我试图映射不同的端口,我已经尝试127.0.0.1而不是本地主机,没有任何工作。 所以我想知道,连接器必须在同一台机器上,而不是MySQL客户端或画面?
我有一个简单的设置,我绑定一个容器中的主机的文件夹。 docker run –rm -it -v /mnt:/mnt ubuntu:16.04 bash 然后我挂载一些其他的文件系统到主机的文件夹。 挂载点出现在容器端,但相应的挂载的文件系统没有。 sudo mkdir /mnt/a sudo mount /dev/sda /mnt/a 如果我启动一个预先安装在主机文件夹下的东西的容器,它们将是可见的。 我相信我错过了Linux cgroups的工作原理。 任何人都可以看到发生了什么? 我正在运行docker17.03.0-ce
大家好抱歉,如果我犯了一个小错误,但我真的迷失在这里。 我已经build立了我的Ubuntu 16.04服务器是Nginx(不在docker集装箱,在主机上运行)和WordPress(在docker集装箱)。 Docker Hub WordPress的回购:(我不能发布多于两个链接,但它的官方WordPress的回购) 经过一些configuration,我设法让nginx运行和wordpress容器。 当我通过原始IP地址和端口访问WordPress的网站时,它工作正常。 但是,当我做一个从Nginx proxy_pass到容器,我的WordPress的网站似乎已经失去了所有的CSS。 具有讽刺意味的是,页面仍然有点负载。 这里是一个例子:(超链接到一个图像) http:// [IP地址]:51080 / wp-admin / install.php http://example.com/wp-admin/install.php 网站可用 upstream example.com { server localhost:51080; } server { listen 80; server_name example.com; location / { proxy_pass http://localhost:51080; } } docker运行命令 docker run –name example.com -d -v /docker/example.com:/var/www/html wordpress / etc / hosts (我在文件中添加了以下行) [IP address] […]
如果我之前没有closures反向代理(nginx),我的容器就无法正常启动。 这些日志显示事件的顺序: 2017-03-23 19:50:29 140019590191872 [Note] mysqld: Shutdown complete mar 23 19:50:57 server env[4805]: example_peerjs_1 exited with code 137 mar 23 19:50:49 server env[4805]: example_mariadb_1 exited with code 0 mar 23 19:50:48 server env[4805]: example_es_1 exited with code 143 mar 23 19:50:48 server env[4805]: example_web_1 exited with code 0 mar 23 19:50:57 server env[5951]: Removing […]
我正在使用Ubuntu 14.04桌面(准确的说是Xubuntu),并试图用iptables阻止外部对本地运行的Postgres端口5432的访问。 这是我的iptables -S -A INPUT -i lo -p tcp -m tcp –dport 5432 -j ACCEPT -A INPUT -p tcp -m tcp –dport 5432 -j DROP 和iptables -L : Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp — anywhere anywhere tcp dpt:postgresql DROP tcp — anywhere anywhere tcp dpt:postgresql 但不知何故,我的Android上的networking扫描仪应用程序,连接到相同的WiFi,仍然可以看到它。 我可以在Android上通过一个PSQL实用程序对其进行进一步testing,而且我可以看到所有的表格。 我错过了什么? […]