制作Docker镜像与运行容器

febootstrap制作docker镜像工具的变名
yum -y install supermin
 

作CentOS镜像文件centos6-image目录:

supermin -i bash -i wget -i yum -i iputils -i iproute -i man -i vim -i openssh-server -i openssh-clients -i tar -i gzip centos7 centos7-image http://mirrors.aliyun.com/centos/7/os/x86_64/


 创建镜像:(以下命令需要使用root运行)
#  supermin5 -v --prepare bash coreutils gcc rpm librpm make yum openssh-server -o supermin.d
# supermin5 -v --build --format chroot supermin.d -o appliance.d
# echo 7 > appliance.d/etc/yum/vars/releasever
# tar --numeric-owner -cpf centos-7.tar -C appliance.d .
# cat centos-7.tar | docker import -zhangjian/centos-7
 
查看镜像:
docker images

运行:
docker run -i -t zhangjian/centos-7 /bin/bash

使用 docker cp 命令
docker cp <containerId>:/file/path/within/container /host/path/target

网络:
docker run -i -t --net="host" kongxx/centos-7 /bin/bash

 

 

镜像改名:
docker tag d7852422d6c5 docker.io/promanz:redhat



docker images往往不知不觉就占满了硬盘空间,为了清理冗余的image,可采用以下方法:

1.进入root权限

sudo su

2.停止所有的container,这样才能够删除其中的images:

docker stop $(docker ps -a -q)

3.查看当前有些什么images

docker images

4.删除images,通过image的id来指定删除谁

docker rmi <image id>

5.如果无法删除,可能是有容器依赖这个镜像,先删容器,列出所有容器
docker ps -a

6.删除容器
docker rm <CONTAINER ID>

7.删除镜像
docker rmi <image id>

完成

 

Docker导出:

 

docker export <containerId> > centos.tar

 

删除所有容器:

docker rm `docker ps -a |awk '{print $1}' | grep [0-9a-z]`

 

以host网络模式运行容器并指定启动一个命令行

docker run -i --net="host" zaki/centos7base /bin/bash -c "/usr/sbin/sshd -d"

 

启动一个sshd,并使用主机网络后台运行

docker run -d --net="host" uft/database /usr/sbin/sshd -d

 

指定docker镜像根目录:

dockerd --graph=/home/docker &

 

docker exec -it adgfaegae bash

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值