docker安装与使用(超详细)

官方安装文档链接:

https://docs.docker.com/install/linux/docker-ce/centos/

阿里云安装文档链接:

https://yq.aliyun.com/articles/110806

阿里云的安装

# step 1: 安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2

# Step 2: 添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# Step 3: 更新并安装Docker-CE
yum makecache fast
yum -y install docker-ce

# Step 4: 开启Docker服务
sudo service docker start

#查看docker 安装完成
docker --version 

配置镜像加速器

https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

针对ocker客户端版本大于 1.10.0 的用户(docker --verion 看版本)

#新建文件夹
mkdir -p /etc/docker

#修改daemon文件,配置文件/etc/docker/daemon.json来使用加速器
tee /etc/docker/daemon.json <<-'EOF'
{

  "registry-mirrors": ["https://jk2v9c0j.mirror.aliyuncs.com"]

}
EOF
#重新加载daemon
systemctl daemon-reload
#重启docker
systemctl restart docker

镜像:类似于系统镜像

#构建镜像:
#1.运行一个基于(Centos/Ubuntu/alpine)启动一个容器,在容器内部执行更改操作,比如安装一个工具或者服务!
#2.使用docker commit 将容器提交更改并生成一个新的镜像,比如有个叫ztt的容器,基于它创建一个镜nginx:1.0
#例子:docker  commit  ztt  nginx:1.0

#拉取镜像
docker pull 镜像名称 


#删除镜像
docker rmi     镜像名/ID
docker rmi -f   镜像名/ID

#删除所有的镜像
docker rmi $(docker images -q)

#改:
docker tag

#查看镜像
docker search #搜索镜像
docker images -a #查看本地所有
docker images 

#从镜像仓库中拉取或者更新指定镜像
docker  pull  镜像名:TAG

#将本地的镜像上传到镜像仓库,要先登陆到镜像仓库
docker push 镜像名:TAG

#从镜像仓库搜索镜像
docker  search 镜像名关键字

#标记本地镜像,将其归入某一仓库。
docker  tag  镜像名:TAG   仓库地址/项目/镜像名:TAG 

#读取Dockerfile,构建镜像
docker build  Dockerfile文件所在路径

#查看镜像构建历史记录
docker history  镜像名:标签

#将现有的docker镜像保存为tar格式的归档文件,可用于备份或迁移
docker save  -o  输出文件名.tar   镜像名:tag

#加载使用 docker save 命令导出的镜像tar文件
docker load -i  文件名.tar   
docker load < 文件名.tar


容器:类似于一个轻量级的箱子,里面运行了我们的应用,他是基于镜像而创建和运行的

#创建容器.创建并运行容器 docker run  --name 容器名字  -d  -p  宿主机端口:容器端口   基础镜像
#例子:docker run --name web1 -d -p 80:80 nginx:latest
--rm  用完及销毁

#docker  run --name learn1  -it busybox /bin/sh   #交互的方式运行

#这个可以使主机下的文件夹 直接挂载到docker容器下的文件夹 下
#docker run --name solo -d -p 8080:8080 -v /opt/webapps:/usr/local/tomcat/webapps tomcat            

#删除容器
docker rm web1
docker rm -f web1

#查看容器
docker ps   #查看正在运行的容器
docker ps -a #查看所有的容器

#容器重命名
docker rename new  old

#容器的启动
docker start

#容器的停止
docker stop 

#容器的重启
docker restart

#暂停容器
docker pause 

#取消暂停容器
docker  unpause 

#更新容器的配置
docker  update

#容器和宿主机之间复制文件,默认覆盖已有的文件
docker cp  本地文件路径   容器名/容器ID:文件存放路径

#在运行的容器中执行一条命令
docker  exec

#以交互的方式进入web1容器操作
docker  exec -it  web1 /bin/bash

#查看容器运行状态(CPU\内存\网络IO\磁盘IO使用情况)
docker stats 容器名 

#查看容器正在运行的进程 
docker top  容器名     

#查看容器或者镜像的底层信息,元数据,比如查看ip、主机名、数据卷、CMD等信息(curl ip )
docker inspect 容器/镜像 

#直接查看(有的话 可以去浏览器看)
curl + ip     

#查看容器内部进程的日志 
docker logs [-f]      

#停止所有的容器 
docker stop $(docker ps -aq) 

#删除所有的容器
docker rm $(docker ps -aq)

#删除所有停止的容器
docker container prune

#数据卷存放位置
/var/lib/docker/volumes

#删除数据卷
docker  volume rm name

#删除无用数据卷
docker volume prune

#创建一个新的容器但不启动它
docker create

#在运行的容器中执行命令
docker exec [参数] 容器名/容器ID  命令  参数

#从一个正在运行的容器创建一个镜像
docker commit 容器名/容器ID   镜像名:TAG

仓库:用来存放镜像的仓库

***######对镜像仓库的操作############### ***


登录到镜像仓库,如不指定默认登陆到Docker Hub,这个用在往仓库推送镜像的时候使用的,平时不使用
登录:docker login -u 账号  -p 密码   镜像仓库地址
登出:docker logout  镜像仓库地址

***######对本地镜像的操作############### ***


原创文章 96 获赞 4 访问量 2155

猜你喜欢

转载自blog.csdn.net/weixin_46380571/article/details/105843375