docker容器的基本命令

 
#安装docker
yum -y install docker
systemctl start docker.service
systemctl status docker
systemctl enable docker
 
docker ps #查看启动的docker
docker ps -a  #查看所有docker
 
docker images  #查看镜像
 
docker search mysql  #搜索网络上的mysql
 
docker pull centos:7  #下载镜像
 
docker rmi centos:7     
docker rmi    ID             #删镜像
docker rm                      #删容器
 
docker run -it centos:7 /bin/bash  #启动容器
docker run -itd centos:7 /bin/bash #后台启动
mkdir test
 
#进入容器
docker exec -it 609bd39cdc18 /bin/bash
 
此时容器较镜像已经发生改变,我们以此生成新镜像
docker commit  0e60561500fc centos:7v1  #生成新的镜像
 
基于模板导出和导入镜像
docker save -o centos_7v1.tar centos:7v1
 
#把镜像传到客户端
scp centos_7v1.tar 192.168.182.140:/root   
 
#在客户端加载镜像
docker load -i centos_7v1.tar
docker run -it centos:7v1 /bin/bash #启动
 
创建dockerfile
mkdir 123   #在root下新建123
 
新建docker文件
#vim dockerfile 
FROM centos:7
RUN yum install -y tree
copy hello /root/
 
touch hello  #新建hello
 
docker build -t centos:7 /root/123/
或者:docker build -t centostest .       #创建镜像
build:创建镜像
-t:为镜像指定名字
.:指明 build context 为当前目录,我们也可以通过 -f 参数指定 Dockerfile 的位置
 
 
docker run -it  centos:7 /bin/bash  #启动检验
 
 
docker history id  
 
#创建dockerfile
FROM:指定 base 镜像。
MAINTAINER:设置镜像的作者,可以是任意字符串
WORKDIR:为后面的 RUN, CMD, ENTRYPOINT, ADD 或 COPY 指令设置镜像中的当前工作目录。
RUN:在容器中运行指定的命令,RUN 指令通常用于安装应用和软件包。
ADD:与 COPY 类似,从 build context 复制文件到镜像。不同的是,如果 src 是归档文件(tar, zip, tgz, xz 等),文件会被自动解压到 dest。
COPY:将文件从 build context 复制到镜像。
COPY 支持两种形式:
COPY src dest
COPY ["src", "dest"]
注意:src 只能指定 build context 中的文件或目录。
ENV:设置环境变量,环境变量可被后面的指令使用。例如:
... ENV MY_VERSION 1.3
RUN apt-get install -y mypackage=$MY_VERSION
 
mkidr docker1
cd docker1
touch tmpfile2
touch a b c
tar zcf test.tar.gz a b c 
 
vim dockerfile
#my dokerfile
FROM centos:7
MAINTAINER abc
WORKDIR /testdir
RUN touch tmpfile1
COPY ["tmpfile2","."]
ADD ["test.tar.gz","."]
ENV WELCOME "you are im my container.welcome!"
 
docker build -t centos_test:7 .   #创建镜像centos_test:7
 
docker images   #查看镜像
 
docker history ID  #查看centos_test的动作
docker run -it  0b02569e7874 /bin/bash #启动容器并查看
 
#删除未启动容器
for id in `docker ps -a | grep Exited | awk '{print $1}' `;do docker rm $id ;done  
for id in `docker ps -aq`;do docker rm -f $id;done
 
#以后台守护进程(Daemonized)形态运行 用-d参数实现
docker run -dti docker.io/centos:7
 
# 启动停止的容器
docker start 08bc41e77b01
 
#重启容器
docker restart 08bc41e77b01
 
#停止 容器
docker stop 08bc41e77b01
 
#进入容器
docker attach  08bc41e77b01
 
#查看容器日志
docker logs -f 9da0a7876f06
 
#暂停容器
docker pause 9da0a7876f06
 
#取消暂停继续运行容器
docker unpause 9da0a7876f06
 
导入和导出容器
a. 导出容器:导出一个已经创建的容器到文件,不管容器是否运行
#docker ps -a
假设当前系统中有两个处于运行和停止状态的容器
#docker export ID > *.tar
#ls
b.将容器导入系统成为镜像
#cat *.tar | docker import - test
 
#所有docker运行的相关文件
/var/lib/docker/
 
 
 
 
 
 
 
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/heiguu/p/10274057.html