我有一个nginx conf文件,由于使用环境变量,我有一个 shell 脚本 echo,我将该文件称为nginx.conf.template,然后我将回显结果放入实际的 中nginx.conf,请参阅下面的 shell 脚本:
#!/bin/sh
function subst() { eval echo -E "$2"; }
mapfile -c 1 -C subst < nginx.conf.template > nginx.conf
Run Code Online (Sandbox Code Playgroud)
我遇到的唯一问题是它删除了所有缩进的空格,我想这会导致问题,但我运行该nginx服务器的 docker 容器似乎没问题。我没有缩进有什么关系吗?如果确实重要, echo 可以保留所述空格吗?
我有一个进程在 Linux 上的 Docker 容器中运行,内存限制为 2GByte。(容器以 开头docker run --memory=2g。)
以下是top它运行一段时间后的情况。
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
9016 root 20 0 7342132 4.652g 4.224g S 100.0 7.4 18828:28 blah
Run Code Online (Sandbox Code Playgroud)
这是输出docker stats:
CONTAINER CPU % MEM USAGE/LIMIT MEM % NET I/O
d7032e5928b6 100.02% 2.076 GB/2.147 GB 96.68% 345 MB/199.1 MB
Run Code Online (Sandbox Code Playgroud)
然后,重新启动后top:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5653 root 20 0 2787800 …Run Code Online (Sandbox Code Playgroud) 如果我使用标签/标签创建容器
docker run --name some_container -d me/my_image
更新图像
docker pull me/my_image
并重新启动容器
docker restart some_container
新容器使用哪个版本?
Indocker inspect .Image给出特定图像的 id,.Config.Image给出标签。
有没有办法强制 OpenSSH(或创建某种代理)仅通过他(或她)提供的用户名将一个用户转发到一台机器,将另一个用户转发到另一台机器?
我遇到以下问题:我要在 Docker 容器中运行 GitLab,同时在主机上运行 SSH 服务器。GitLab 监听 SSH 连接,但它只对“git”用户通过 SSH 密钥区分客户端感兴趣。所以我想创建的设置是以下之一:
需要明确的是:Docker 容器运行一个网桥,并且可以通过不同于主机 IP 的唯一 IP 地址从主机访问它。
StackOverflow 上也提出了类似的问题(/sf/ask/595381181/),但没有答案可以解决该问题 - 最有帮助的是建议自定义 shell,但我发现没有办法创建类似的东西。
docker inspect返回有关 docker 映像或容器(或另一个对象)的各种有趣信息。
这些信息存储在哪里?可以编辑吗?
我工作的环境有时 DNS 服务器会崩溃并告诉您它无法解析主机(例如,查找“github.com”失败)。它是暂时的,通常恢复得相当快。然而,有时当这种情况发生时,docker 守护进程在用户定义的桥接网络上提供的嵌入式 DNS 服务似乎会缓存错误的结果。一旦被缓存,我们最终需要完全删除网络并重建它(即,docker-compose down然后docker-compose up)。我在运行 docker-engine 17.05.0-ce、build 89658be 的 debian jessie 盒子上看到了这一点。
有没有其他人遇到过这种情况,并且可能找到了比拆除和重建网络更轻量级的解决方案?
在一个特定的情况下,我遇到了突然冻结的情况。
以下是实例的一些详细信息:
类型:t2.micro
Region/av。区域:us-west-2b
操作系统:amzn-ami-hvm-2018.03.0.20180811-x86_64-gp2 (ami-a0cfeed8)
我的这个 Ec2 实例自动冻结。
我在实例中安装了 docker。
我是这个领域的新手。
不知道从哪里可以获取系统或服务器日志来解释为什么我的 ec2 实例持续冻结,以便我可以跟踪问题。
提前致谢。
amazon-ec2 amazon-web-services unexpected-shutdown docker docker-compose
我正在尝试从 amazonlinux (基于 Fedora)构建一个容器。
如果我构建映像并进入容器,则 yum 命令可以正常工作。但是,如果我将 yum 命令放入 Dockerfile 中,则不会。似乎无法联系存储库
Dockerfile
FROM amazonlinux
RUN yum update -y
Run Code Online (Sandbox Code Playgroud)
运行: sudo docker build 。
Sending build context to Docker daemon 3.072kB
Step 1/2 : FROM amazonlinux
---> df7d0b6ddeee
Step 2/2 : RUN yum update -y
---> Running in 14e4e4bad5b1
Loaded plugins: ovl, priorities
Run Code Online (Sandbox Code Playgroud)
结果尝试了几个https,最后:
...URLError: (28, 'Resolving timed out after 5516 milliseconds')
Trying other mirror...
The command '/bin/sh -c yum update -y' returned a non-zero code: 1
Run Code Online (Sandbox Code Playgroud) 我的用例:我想通过 路由所有互联网machine B流量machine A。但是,我不能简单地将 OpenVPN 服务器安装在我无法控制的 NAT/防火墙层后面machine A。machine A我当前的解决方案是安装 OpenVPN 服务器machine C,并同时拥有两者machines A并作为客户端B连接C。我正在尝试设置正确的路线,以便所有来自 的流量都B可以通过A. 下面详细介绍了每台计算机上的设置和我尝试的步骤,我剩下的问题在倒数第二段中。
现在,machine C在 Docker 容器中运行 Linux 和 OpenVPN 服务器 ( https://github.com/kylemanna/docker-openvpn )。使用redirect-gateway def1,两台客户端计算机都可以通过服务器连接和路由流量(https://ipleak.net确认服务器 IP)。但对于以下测试,redirect-gateway def1被删除,而topology subnet和client-to-client被添加。服务器有子网IP192.168.255.1和公网IP AAA.BBB.CCC.DDD。
machine A运行 Windows 并已IPEnabledRouter=1在 中进行设置HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\,将服务Routing …
我正在尝试启动一个 Keycloak 实例,它使用自定义 mysql 数据库而不是嵌入式 H2。
由于我打算使用docker,所以我为Keyclock docker创建了一个网络来与mysql通信。
docker网络创建keycloak网络
接下来,使用以下命令启动 mysql 的 docker 实例。
sudo docker run --name mysql-container --net keycloak-network -v /home/renju/opt/EXONERATE/DB/mysql-data-5-7:/var/lib/mysql -e MYSQL_DATABASE=keycloak -e MYSQL_USER =ku -e MYSQL_PASSWORD=kupw -e MYSQL_ROOT_PASSWORD=myrootpw -d -p 3306:3306 mysql:5.7
我期望 keycloak使用用户名ku和密码kupw访问数据库keycloak。我确保数据库和用户都是在 mysql 中创建的。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| keycloak |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
mysql> select * from …Run Code Online (Sandbox Code Playgroud) docker ×10
linux ×2
amazon-ami ×1
amazon-ec2 ×1
git ×1
keycloak ×1
memory-usage ×1
mysql ×1
networking ×1
nginx ×1
openvpn ×1
shell ×1
ssh ×1
top ×1
windows ×1