第2章:Linux服务器-Docker安装

Docker介绍和使用

官网:https://www.docker.com/get-started/

什么是Docker:一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

简单来说:就是可以快速部署启动应用。实现虚拟化,完成资源隔离。一次编译,四处允许。

CentOS服务器安装Docker实战

复制代码
# 按装依赖
yum install -y yum-utils device-mapper-persistent-data lvm2

# 配置 yum 源(比较慢)
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 使用国内的
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 查看版本
yum list docker-ce --showduplicates | sort -r

#1. 安装 docker
yum -y install docker-ce-20.10.10-3.el7

#2. 查看 docker 版本
docker -v

#3. 启动 docker
systemctl start docker

#4. 查看 docker 启动状态
systemctl status docker

检查安装结果。
docker info

启动使用 docker
systemctl start docker #运行 Docker 守护进程
systemctl stop docker #停止 Docker 守护进程
systemctl restart docker #重启 Docker 守护进程

docker ps 查看容器
docker stop 容器 id

修改镜像仓库
vim /etc/docker/daemon.json
# 改为下面内容,然后重启 docker
{
"registry-mirrors": [
  "https://docker.1panel.live",
  "https://dc.j8.work",
  "https://docker.m.daocloud.io",
  "https://dockerproxy.com",
  "https://docker.mirrors.ustc.edu.cn",
  "https://docker.nju.edu.cn"
]
}

sudo systemctl restart docker

# 查看信息
docker info
注意:不使用 1.13.1 版本,该版本在 jenkins 使用 docker 命令时会说找不到配置文件!

Docker命令实战

常用命令(安装部署好Docker后,执行的命令是docker开头),xxx是镜像名称

搜索镜像:docker search xxx

列出当前系统存在的镜像:docker images

拉取镜像:docker pull xxx

  • xxx是具体某个镜像名称(格式 REPOSITORY:TAG)
  • REPOSITORY:表示镜像的仓库源,TAG:镜像的标签

运行一个容器

复制代码
docker run --name nginx1 -p 8080:80 -d nginx

docker run - 运行一个容器
      -d 后台运行
      -p 端口映射
      --name "xxx"  容器名称

列举当前运行的容器:docker ps

检查容器内部信息:docker inspect 容器名称

删除镜像:docker rmi IMAGE_NAME

  • 强制移除镜像不管是否有容器使用该镜像 增加 -f 参数

停止某个容器:docker stop 容器名称

启动某个容器:docker start 容器名称

移除某个容器: docker rm 容器名称 (容器必须是停止状态)

列举全部 容器 : docker ps -a

查看容器启动日志:docker logs -f containerid

Docker安装DockerCompose

什么是DockerCompose:可以轻松,搞笑的管理容器,它是一个用于定义和运行多容器Docker的应用程序工具,属于容器编排工具,可以配置并启动多个容器,适合复杂业务场景。

官方地址:https://docs.docker.com/compose/install/

复制代码
# 指定路径【推荐】
sudo curl -L https://gitee.com/fustack/docker-compose/releases/download/v2.24.1/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
# 设置权限
sudo chmod +x /usr/local/bin/docker-compose
相关推荐
九转成圣43 分钟前
Java 性能优化实战:如何将海量扁平数据高效转化为类目字典树?
java·开发语言·json
直奔標竿1 小时前
Java开发者AI转型第二十七课!Spring AI 个人知识库实战(六)——全栈闭环收官,解锁前端流式渲染终极技巧
java·开发语言·前端·人工智能·后端·spring
金銀銅鐵2 小时前
[java] 编译之后的记录类(Record Classes)长什么样子(上)
java·jvm·后端
野生技术架构师3 小时前
金三银四面试总结篇,汇总 Java 面试突击班后的面试小册
java·面试·职场和发展
小袁拒绝摆烂4 小时前
多表关联大平层转JSON树形结构
java·json
ja哇5 小时前
大厂面试高频八股
java·面试·职场和发展
yoyo_zzm5 小时前
Laravel6.x新特性全解析
java·spring boot·后端
Nick_zcy5 小时前
小说在线阅读网站和小说管理系统 · 功能全解析
java·后端·python·springboot·ruoyi
源码宝5 小时前
基于 SpringBoot + Vue 的医院随访系统:技术架构与功能实现
java·vue.js·spring boot·架构·源码·随访系统·随访管理