14. 使用脚本创建Docker及配置网络
2016-10-16 12:56
513 查看
ps: 该脚本从网上找的
1. 创建容器
bash-4.3# cat docker_create.sh #!/bin/bash images="sshd:centos6.8" name="docker_211" dir="/data/docker/volumes/docker_211" #ip="192.168.1.56/24" docker run -itd --net=none -h $name -v $dir:/data --privileged --name $name $images /bin/bash
2. 为容器配置静态IP地址
bash-4.3# cat docker_ipaddr.sh #/bin/bash if [ -z $1 ] || [ -z $2 ] || [ -z $3 ] || [ -z $4 ]; then echo "*****Input the necessary parameters: CONTAINERID IP MASK GATEWAY" echo "*****Call the script like: sh manual_con_static_ip.sh b0e18b6a4432 192.168.5.123 24 192.168.5.1 deth0" exit fi CONTAINERID=$1 SETIP=$2 SETMASK=$3 GATEWAY=$4 ETHNAME=$5 #判断宿主机网卡是否存在 fconfig $ETHNAME > /dev/null 2>&1 if [ $? -eq 0 ]; then read -p "$ETHNAME exist,do you want delelte it? y/n " del if [[ $del == 'y' ]]; then ip link del $ETHNAME else exit fi fi pid=`docker inspect -f '{{.State.Pid}}' $CONTAINERID` mkdir -p /var/run/netns find -L /var/run/netns -type l -delete if [ -f /var/run/netns/$pid ]; then rm -f /var/run/netns/$pid fi ln -s /proc/$pid/ns/net /var/run/netns/$pid ip link add $ETHNAME type veth peer name B brctl addif br0 $ETHNAME ip link set $ETHNAME up ip link set B netns $pid #删除容器内已存在的eth0 ip netns exec $pid ip link del eth0 > /dev/null 2>&1 ip netns exec $pid ip link set dev B name eth0 ip netns exec $pid ip link set eth0 up ip netns exec $pid ip addr add $SETIP/$SETMASK dev eth0 ip netns exec $pid ip route add default via $GATEWAY
3. 使用该脚本创建容器
bash-4.3# sh docker_create.sh 2c21a8a52e4c239650be60dc5e3db47f0eb4a39222f42df36d40b7aa0f036525 bash-4.3# sh docker_ipaddr.sh docker_211 172.168.200.211 24 172.168.200.254 deth211 bash-4.3# ssh root@172.168.200.211 root@172.168.200.211's password: Last login: Wed Aug 10 04:17:37 2016 from aca8c856.ipt.aol.com [root@docker_211 ~]#
相关文章推荐
- Tcl脚本调用高层API实现仪表使用和主机创建配置的自动化测试用例
- Docker 使用指南 (三)—— 网络配置
- Docker 配置网络 - 使用 bridge 网络
- Docker 配置网络 - 使用 bridge 网络
- Docker:使用pipework配置docker网络
- Docker使用网络命令,创建自己的网络
- Docker 配置网络 - 使用 overlay 网络
- Docker 使用指南 (三)—— 网络配置
- Docker 配置网络使用bridge网络的方法
- Ubuntu 14.04 使用qemu创建虚拟机并配置桥接网络
- 【备忘】使用 Docker Machine 创建虚拟机的脚本及参数
- Docker 使用指南 (三)—— 网络配置
- Docker 配置网络 - 使用 host 网络
- Linux系统下基于Kvm创建虚拟机时网络网桥的配置使用说明
- docker深入2-使用自定义的网络来配置zookeeper集群
- Tcl脚本调用高层API实现仪表使用和主机创建配置的自己主动化測试用例
- SecureCRT使用VBS脚本自动备份网络设备配置,目前支持部分H3C及dptech
- Docker 配置守护进程和容器的网络 - 配置 Docker 使用代理服务器
- Docker 配置网络 - 使用 Macvlan 网络
- windows下使用脚本修改网络配置