Docker常用命令总结

文章目录

Docker命令总结

简介:Docker是一个基于轻量级虚拟化技术的容器,整个项目基于Go语言开发,并采用了Apache 2.0协议。Docker可以将我们的应用程序打包封装到一个容器中,该容器包含了应用程序的代码、运行环境、依赖库、配置文件等必需的资源,通过容器就可以实现方便快速并且与平台解耦的自动化部署方式,无论你部署时的环境如何,容器中的应用程序都会运行在同一种环境下。

Docker 其中包括 镜像、容器、仓库,很简单,目的就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的产品(可以是 web 应用或者数据库应用)及其环境能够做到"一次封装,到处运行"。

Docker镜像官网

阿里云镜像中心

Docker环境安装:

#卸载旧的docker版本
yum remove docker \docker-client \docker-client-latest \ docker-common \docker-latest docker-latest-logrotate \docker-logrotate\docker-engine

# 安装yum-utils
yum install -y yum-utils device-mapper-persistent-data lvm2

# 为yum源添加docker仓库位置;
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 设置阿里云的Docker镜像仓库
# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

# 安装docker服务  docker-ce 是社区版,docker-ee 企业版
yum install docker-ce

# 启动docker服务。
systemctl start docker

# 查看当前版本号,是否启动成功
docker version
# hello-world 映像来验证是否正确安装
docker run hello-world
# 设置开机自启动
systemctl enable docker

卸载docker

# 1、卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
# 2、删除资源
rm -rf /var/lib/docker

docker命令

# 镜像命令
# 查看本地所有镜像       
docker images
# 可选项
--all , -a      # 列出所有镜像
--quiet , -q    # 只显示镜像的id     

# 搜索镜像
docker search 镜像名称【选项】   docker search mysql --filter=stars=4000 # 搜素出来的镜像就是STARS大于3000的

# 下载镜像
docker pull 镜像名[:tag] #如果不写tag,默认就是latest
docker pull mysql:5.7

# 删除镜像(rmi带有i的是images)
#强制移除正在运行的容器(镜像)          # 删除多个容器                      # 删除所有容器
docker rmi -f 容器id    docker rmi -f 容器1id 容器2id     docker rmi -f $(docker images -aq)

# 容器命令
# 启动并进入centos容器  -it交互方式运行进入容器    # 指定容器的端口  -p  8080:8080,ip:主机端口:容器端口可为3、2或者1个
docker run -it centos /bin/bash              docker run  -p ip:主机端口:容器端口  容器名

# 启动nginx   -d表示后台运行nginx 并使用映射 
# name:给容器自定义命名 -p 宿主机端口:容器内部端口
docker run -d --name nginx01 -p 3344:80 nginx

# 进入到指定正在运行的容器中(进入容器后开启一个新的终端) # 进入容器后不开启一个新的终端,不会启动新的进程,但是退出会造成容器停止
docker exec -it ac46f0e9cc66 /bin/bash            docker attach  镜像id

# 退出容器的交互模式(回到宿主机)但不停止容器
exit    ctrl + P + Q

# 查看运行容器  # 列出所有运行或停止的容器   # 列出最后运行的一个容器    # 列出所有容器的id编号
docker ps      docker ps -a           docker ps -n=1           docker ps -aq

# 强制移除正在运行的容器         # 删除当前所有的容器               # 删除所有停止的容器,dangling的镜像和未使用的网络
docker rm -f 183c5e3c0f5f    docker rm -f $(docker ps -aq)   docker system prune

# 启动与停止容器的操作
docker start 容器id           # 启动容器
docker restart 容器id         # 重启容器
docker stop 容器id            # 停止当前正在运行的容器
docker kill 容器id            # 强制停止当前的容器

# 容器拷贝文件
# 拷贝运行中的容器里的一个文件到主机目录中(无论该容器是否运行都能够进行拷贝)  #拷贝宿主机的文件到容器中
docker cp ac46f0e9cc66:/home/test.java /home                       docker cp 目的主机路径 容器id:容器内路径


#查看日志
docker logs -tf --tail number 容器id

#查看容器中进程信息ps
docker top 容器id
#查看镜像的元数据
docker inspect 容器id

curl本机测试请求命令:

curl localhost:3344
相关推荐
明 庭1 小时前
Ubuntu下通过Docker部署NGINX服务器
服务器·ubuntu·docker
荆州克莱2 小时前
mysql中局部变量_MySQL中变量的总结
spring boot·spring·spring cloud·css3·技术
dessler3 小时前
Docker-run命令详细讲解
linux·运维·后端·docker
aherhuo4 小时前
kubevirt网络
linux·云原生·容器·kubernetes
陌北v14 小时前
Docker Compose 配置指南
运维·docker·容器·docker-compose
catoop4 小时前
K8s 无头服务(Headless Service)
云原生·容器·kubernetes
阿里嘎多学长5 小时前
docker怎么部署高斯数据库
运维·数据库·docker·容器
明 庭5 小时前
Ubuntu下通过Docker部署Caddy服务器
服务器·ubuntu·docker
G_whang6 小时前
windos 安装docker
运维·docker·容器
Mitch3116 小时前
【漏洞复现】CVE-2021-45788 SQL Injection
sql·web安全·docker·prometheus·metersphere