Google compute engine 容器优化操作系统示例
我已经阅读了这里的所有文档:尝试将使用容器vm映像的现有配置升级到使用容器优化操作系统的新配置。但什么都不管用!我无法使Docker容器绑定到端口80 ie.-p 80:80,而且我的Docker容器似乎无法写入/var/run/nginx.pid是的,我在Docker容器中使用nginx。我按照说明禁用AppArmour,并尝试为nginx创建AppArmour配置文件。什么都不管用!他们是否有使用容器优化操作系统的例子,而不仅仅是使用busybox图像和打印Hello World或sleep!举个例子,打开一个端口并写入文件系统,怎么样?我刚刚安装在容器优化的操作系统上,它工作起来很有魅力。有 根文件系统/以只读方式装入,其中某些部分以可写方式重新装入,如下所示: /tmp、/run、/media、/mnt/磁盘和/var/lib/cloud都已装入 使用tmpfs和,虽然它们是可写的,但它们的内容不是可写的 在重新启动之间保存 目录/mnt/stateful\u分区,/var 和/主从有状态磁盘分区装入,这意味着 这些位置可用于存储跨存储的数据 重新启动。例如,Docker的工作目录/var/lib/Docker是 跨重新启动状态 在可写位置中,只有 /var/lib/docker和/var/lib/cloud作为可执行文件安装,即。 没有noexec挂载标志。 地址,在容器优化操作系统实例上运行以下命令:Google compute engine 容器优化操作系统示例,google-compute-engine,google-container-os,Google Compute Engine,Google Container Os,我已经阅读了这里的所有文档:尝试将使用容器vm映像的现有配置升级到使用容器优化操作系统的新配置。但什么都不管用!我无法使Docker容器绑定到端口80 ie.-p 80:80,而且我的Docker容器似乎无法写入/var/run/nginx.pid是的,我在Docker容器中使用nginx。我按照说明禁用AppArmour,并尝试为nginx创建AppArmour配置文件。什么都不管用!他们是否有使用容器优化操作系统的例子,而不仅仅是使用busybox图像和打印Hello World或sleep
sudo iptables -w -A INPUT -p tcp --dport 80 -j ACCEPT
通常,建议您通过cloud init将主机防火墙配置为systemd服务
PS:容器优化操作系统能够自动更新。这个机制可以用来更新一组计算引擎实例。我刚刚安装在容器优化的操作系统上,它工作起来很有魅力。有
根文件系统/以只读方式装入,其中某些部分以可写方式重新装入,如下所示:
/tmp、/run、/media、/mnt/磁盘和/var/lib/cloud都已装入
使用tmpfs和,虽然它们是可写的,但它们的内容不是可写的
在重新启动之间保存
目录/mnt/stateful\u分区,/var
和/主从有状态磁盘分区装入,这意味着
这些位置可用于存储跨存储的数据
重新启动。例如,Docker的工作目录/var/lib/Docker是
跨重新启动状态
在可写位置中,只有
/var/lib/docker和/var/lib/cloud作为可执行文件安装,即。
没有noexec挂载标志。
地址,在容器优化操作系统实例上运行以下命令:
sudo iptables -w -A INPUT -p tcp --dport 80 -j ACCEPT
通常,建议您通过cloud init将主机防火墙配置为systemd服务
PS:容器优化操作系统能够自动更新。此机制可用于更新计算引擎实例组
我无法使Docker容器绑定到端口80 ie.-p 80:80,而且我的Docker容器似乎无法写入/var/run/nginx.pid是的,我在Docker容器中使用nginx
我想你可能遇到了GCE防火墙问题。最好的方法是逐步验证/调试:
尝试运行一个非常简单的nginx容器:
-d要求Docker在守护进程模式下运行它,-p80:80映射HTTP端口,-name nginx hello names to container映射到nginx hello
docker run -d --name nginx-hello -p 80:80 nginx
可选验证容器是否正确运行:您应该看到列出的nginx hello容器
docker ps
验证nginx是否在本地工作:您应该会看到良好的HTTP响应
curl localhost:80
如果您能够正确验证上述所有步骤,那么您可能会面临GCE防火墙问题:
我无法使Docker容器绑定到端口80 ie.-p 80:80,而且我的Docker容器似乎无法写入/var/run/nginx.pid是的,我在Docker容器中使用nginx
我想你可能遇到了GCE防火墙问题。最好的方法是逐步验证/调试:
尝试运行一个非常简单的nginx容器:
-d要求Docker在守护进程模式下运行它,-p80:80映射HTTP端口,-name nginx hello names to container映射到nginx hello
docker run -d --name nginx-hello -p 80:80 nginx
可选验证容器是否正确运行:您应该看到列出的nginx hello容器
docker ps
验证nginx是否在本地工作:您应该会看到良好的HTTP响应
curl localhost:80
如果您能够正确验证上述所有步骤,那么您可能会面临GCE防火墙问题:
谢谢我相信我甚至不能坚持到80岁。。。今晚我来看看。我绑定到端口80没有问题,也就是说我正在使用-p80:8080将Docker中的服务映射到端口80。谢谢。我相信我甚至不能坚持到80岁。。。今晚我来看看。我绑定到端口80没有问题,也就是说我正在使用-p80:8080将Docker中的服务映射到端口80。-v80:80应该是-p80:80。。打字错误?@koma
修正了谢谢-v 80:80应该是-p 80:80。。打字错误?@koma修正了,谢谢