写一段容器启动的通用脚本 包含端口映射 数据卷映射 开机启动 等等
时间: 2023-01-15 08:14:02 浏览: 76
下面是一个通用的容器启动脚本,它包括端口映射、数据卷映射、开机启动等功能:
```
#!/bin/bash
# 设置容器名称
CONTAINER_NAME="my-container"
# 设置镜像名称
IMAGE_NAME="my-image"
# 设置容器内部使用的端口
INTERNAL_PORT=80
# 设置容器外部使用的端口
EXTERNAL_PORT=8080
# 设置数据卷挂载路径
DATA_VOLUME="/data"
# 设置数据卷挂载点
DATA_VOLUME_MOUNT="/app/data"
# 删除旧的容器
docker stop $CONTAINER_NAME
docker rm $CONTAINER_NAME
# 启动新的容器
docker run -d --name $CONTAINER_NAME \
-p $EXTERNAL_PORT:$INTERNAL_PORT \
-v $DATA_VOLUME:$DATA_VOLUME_MOUNT \
--restart=always \
$IMAGE_NAME
```
上面的脚本首先会删除旧的容器,然后启动一个新的容器。新容器的名称是 "my-container",使用的镜像名称是 "my-image",容器内部使用的端口是 80,容器外部使用的端口是 8080。此外,脚本还会将本地的 "/data" 目录挂载到容器的 "/app/data" 目录下。最后,脚本将容器设置为开机启动。
相关问题
写一段容器启动的通用脚本
下面是一段通用的容器启动脚本:
```bash
#!/bin/bash
# 设置容器名称
container_name=my_container
# 设置镜像名称
image_name=my_image
# 启动容器
docker run --name $container_name -d $image_name
# 查看容器的启动状态
docker ps -a
```
在这段脚本中,我们首先设置了容器的名称和镜像的名称,然后使用 `docker run` 命令来启动容器。最后,我们使用 `docker ps` 命令来查看容器的启动状态。
注意,这只是一个简单的例子,实际情况可能会有更多的选项和参数需要设置。例如,可能需要设置端口映射、环境变量、数据卷等等。
centos7下智能的端口映射脚本
你可以使用iptables来实现端口映射,以下是一个简单的脚本:
```bash
#!/bin/bash
# 设置需要映射的本地端口和目标IP以及端口
LOCAL_PORT=8080
TARGET_IP=192.168.1.100
TARGET_PORT=80
# 开启IP转发
echo 1 > /proc/sys/net/ipv4/ip_forward
# 清空iptables规则
iptables -F
# 设置规则,将本地端口映射到目标IP的端口
iptables -t nat -A PREROUTING -p tcp --dport $LOCAL_PORT -j DNAT --to-destination $TARGET_IP:$TARGET_PORT
iptables -t nat -A POSTROUTING -j MASQUERADE
# 保存规则
service iptables save
echo "端口映射已开启,本地端口$LOCAL_PORT已映射到$TARGET_IP的$TARGET_PORT端口"
```
在执行脚本之前,需要确保iptables已经安装并启动。执行脚本后,可以通过访问本地的8080端口来访问目标IP的80端口。注意,如果你需要持久化这个规则,需要使用`service iptables save`命令保存规则。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)