Docker的虚拟化安装、常用命令和使用案例

Byyyi耀 2024-08-07 17:37:01 阅读 78

在这里插入图片描述

在这里插入图片描述

文章目录

一、Docker的虚拟机安装1、完成虚拟机的更新2、完成Docker安装3、配置镜像加速器

二、Docker常用命令三、Docker的容器创建四、理解虚拟机中的Docker容器

一、Docker的虚拟机安装

1、完成虚拟机的更新

详见我的文章。

2、完成Docker安装

<code>yum list installed|grep docker # 检查是否有docker旧版本,有则删除

yum -y install yum-utils # 安装Docker的安装工具

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repocode>

yum clean all

yum makecache # 再进行一次更新

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

systemctl start docker # 尝试启动docker

systemctl isactive docker # 检查docker是否被成功启用

3、配置镜像加速器

打开阿里云镜像服务,登录自己的阿里云账号。

在这里插入图片描述

根据操作文档继续进行配置,注意需要将自己的镜像加速器的特有地址写在<code>daemon.json中。

注意,此处一定要按照标准json格式书写配置,否则可能会导致报错。

mkdir -p /etc/docker

vim /etc/docker/daemon.json

-------------------------------------------------------------code>

{

"registry-mirrors": [

"https://7ce69edu.mirror.aliyuncs.com"

# 可以添加其他的镜像源地址

]

}

-------------------------------------------------------------

systemctl daemon-reload

systemctl restart docker

二、Docker常用命令

docker search name:edition # 查找安装资源

# docker search mysql 查找mysql的安装资源

docker images # 查找已下载的镜像

docker pull name edition # 下载镜像(如果没有指定版本,默认下载最新稳定版本)

# docker pull mysql

docker run \ # 根据镜像安装容器

--name mysql8 \

--restart=always \

--privileged=true \

-e MYSQL_ROOT_PASSWORD='abc' \ # 指定Docker容器中Mysql服务的密码code>

-p 3308:3306 \ # 端口映射

-v /opt/software/mysql_docker_3308:/mysql_share \ # 共享目录

-d 3218b38490ce # 运行的镜像的ID

docker ps # 查找正在运行的容器

docker ps -a # 查找所有历史容器

docker exec -it 3d234d76f0bd /bin/bash # 进入指定docker容器

exit # 从容器回到虚拟机

docker container stop CONTAINER_ID # 关闭指定容器

在最后根据镜像安装容器时,-d后的内容必须与docker所安装的Mysql的镜像的IMAGE ID一致

在这里插入图片描述

在进入容器时,<code>exec -it后面的内容必须与docker容器的CONTAINER_ID一致

在这里插入图片描述

三、Docker的容器创建

此处以创建Mysql容器为例

<code>docker search mysql

docker pull mysql

docker images

# 记录镜像的IMAGE_ID

docker run \

--name mysql8 \code>

--restart=always \

--privileged=true \

-e MYSQL_ROOT_PASSWORD='abc' \ code>

-p 3308:3306 \

-v /opt/software/mysql_docker_3308:/mysql_share \

-d IMAGE_ID# 填写镜像的IMAGE_ID

docker ps # 记录容器的CONTAINER_ID

docker exec -it CONTAINER_ID /bin/bash # 填写容器的CONTAINER_ID

mysql -u root -pabc # 尝试登陆mysql,检查功能

四、理解虚拟机中的Docker容器

请添加图片描述

目录映射:虚拟机和Docker容器之间存在一个共享目录,当文件进入虚拟机内的目录后,会同步到Docker容器中的目录。

端口映射

命令为:

<code> docker run -p <宿主机端口>:<容器内部服务端口> image_name

在设定端口的时候,应该先通过该命令确定端口是否被占用:

netstat -ltnp | grep PORT

对于像在Github爬取项目的场景,可以选择1024以上的非常用端口,只要检查后未实际占用端口即可。

在这里插入图片描述



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。