Docker安装和常用命令

Docker安装和常用命令

1. Linux安装docker

  1. 安装gcc

    yum 安装gcc
    yum -y install gcc
    yum -y install gcc-c++
    
  2. 删除原有docker,如果有

    $ sudo yum remove docker \
                      docker-client \
                      docker-client-latest \
                      docker-common \
                      docker-latest \
                      docker-latest-logrotate \
                      docker-logrotate \
                      docker-engine
    

docker官网

yum install -y yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
yum -y install containerd.io-1.2.6-3.3.el7.x86_64.rpm

安装最新版本命令

yum install docker-ce docker-ce-cli containerd.io

docker随系统启动

systemctl enable docker.service

2. Docker命令

2.1 帮助命令

docker version #查看版本
docker info

2.2 镜像命令

| REPOSITORY | TAG | IMAGE ID | CREATED | VIRTUAL SIZE |
|------------|-----|----------|---------|--------------|
|   镜像名称  | 版本|   镜像ID |  创建时间|  大小         |
------------------------镜像-------------------------------------
docker images # 列出本地所有镜像
	 -a  #列出本地所有的镜像(包含中间映像层)
     -q  #只显示镜像id
     --digests #显示镜像的摘要信息
     --no-trunc #显示完整的镜像信息
	 -qa #显示所有镜像的id 可以查出所有id批处理操作
docker search 镜像的名称  # 查找某个镜像	http://hub.docker.com 上寻找资源
	-s #列出收藏数不小于指定值得镜像
	--no-trunc #显示完整的镜像信息
	--automated #只列出automated build类型的镜像
docker pull 镜像名称[TAG] #拉去一个镜像
docker rmi imageId [imageId] # 删除镜像 ,删除镜像之前必须先删除创建的容器 [imageId]删除多个image
docker rmi -f ${docker images -q} #删除所有镜像
-----------------------------------------------------------------

2.3 容器命令

-------------容器--------------
docker run [OPtiONS] imageId [CMD] [ARGS] #  新建并运行一个容器
	[OPTIONS] 
	=> --name='容器的新名称' : 为容器指定一个名称 是唯一的
	=> -d : 后台运行容器,并返回容器的id
	=> -i : 以交互模式运行容器,通常与 -t一起使用
	=> -t : 为容器分配一个伪输入终端,通常与-i一起使用
	=> -P : 随机端口映射
	=> -p : 指定端口映射,有四种各执
		-> ip:hostport:containerport
		-> ip::containerport
		-> hostport:containerport
		-> containerport
		
		
		
docker ps # 列出所有正在运行的容器
	docker ps -a #列出所有正在运行或者已经停止的容器
	
exit #容器停止并退出
ctrl+P+Q #容器不停止并退出

docker stop containerId # 停止一个容器
docker start containerId # 启动一个容器
docker restart containerId # 从起一个容器
# 删除一个容器
docker rm containerId 
# 删除多个容器
docker rm -f ${docker ps -a -q} 
docker ps -a -q| xargs docker rm
-------------------查看日志-----------------------
docker logs -f -t --tail containerId 
	-t # 加入时间戳
	-f # 跟随最新的日志打印
	--tail # 数字显示最后多少条
-------------------查看容器内 top--------------------
docker top containerId
-------------------查看容器内细节-----------------
docker inspect containerId
-------------------进入容器--------------------
docker exec -it containerId /bin/bash
docker attach containierId

-------------------------拷贝-------------------------
docker cp containerId:/tmp/log.log /home # 将容器中log.log文件拷贝到home文件夹中

关联容器目录

docker run -it -v /宿主机绝对路径目录:/容器内部目录 镜像名
#例子:
docker run -it -v /myDataVolume:/dataVolumeContainer ubuntu

docker inspect containerid #以json的方式查看docker信息

docker attach containerId #重新进入容器

# 带权限的命令
docker run -it -v /宿主绝对路径:/容器内目录:ro 镜像名 # :ro 只读命令
posted @ 2020-06-03 17:15  松间明月447  阅读(126)  评论(0编辑  收藏  举报