Linux发行版CentOS 8 利用Docker安装应用

avatar
作者
筋斗云
阅读量:4

目录

一、什么是Docker?

主要功能:

二、安装Docker

        1.安装yum配置工具

        2.配置docker的yum源

        3.安装

        4.测试

        5.启动,关闭,开机自启动

三、卸载Docker

        1.停止服务

        2.卸载

        3.删除文件

四、Docker配置镜像源

        1.在etc下创建docker目录

        2.进入docker目录

        3.创建daemon.json文件

        4.修改文件

        5.重载配置

        6.重启

五、Docker命令

        1.镜像操作命令

        (1)从镜像仓库下载镜像到本地

        (2)查看本地镜像

         (3)删除docker镜像

        (4)从docker保存镜像到Linux本地

        (5)从Linux本地加载镜像到docker中

        2.容器操作命令

        (1)通过镜像安装

        (2)查看容器

        (3)启动镜像

        (4)停止容器

        (5)删除容器(卸载)

六、利用Docker安装应用

        1.安装MySQL

        (1)下载mysql镜像

        (2)安装mysql容器

        (3)启动,停止,删除容器

        (4)进入到容器中的命令行

        (5)退出

        2.数据卷挂载

        (1)创建mysql数据卷

        (2)安装

        3.安装Nginx

        (1)拉取镜像

        (2)创建数据卷

        (3)安装命令


一、什么是Docker?

        在Linux中安装软件:

        以前在Linux中安装软件,是直接安装在Linux操作系统中,软件和操作系统耦合度很高,不方便管理。

        因为Linux版本不同,环境也就不同了。

        docker是一种容器技术(软件),提供标准的应用镜像(包含应用+应用的依赖),我们就可以非常轻松的在docker中安装应用,每一个应用安装好后,就是一个独立的容器

特点:解决软件跨环境迁移的问题

主要功能:

        打包:可以把软件以及软件的依赖打包制作成一个镜像(例如后面把springboot和JDK打包成一个镜像)

        分发:可以把打包好的镜像上传到镜像仓库,或者其他的Linux系统中

        部署:可以非常方便的进行安装,只需要一个命令即可

二、安装Docker

        Docker是一个用来安装软件的工具,但是安装Docker还得需要利用yum来安装

        1.安装yum配置工具

yum install -y yum-utils 

等待安装

        2.配置docker的yum源

yum-config-manager \  --add-repo \  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

注:因为命令代码太长,所以用“\”进行换行,如果是一行输入的话就将“\”删除拼接即可

        3.安装

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

等待安装即可

        4.测试

docker -v

        5.启动,关闭,开机自启动

        为了方便我们使用方便,建议设置开机自动启动

docker安装成功后并没有启动, 启动命令 systemctl start docker 关闭命令 systemctl stop docker 设置开机自动启动 systemctl enable docker

三、卸载Docker

        1.停止服务

systemctl stop docker

        2.卸载

yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin

        3.删除文件

rm -rf /var/lib/docker rm -rf /var/lib/containerd

四、Docker配置镜像源

        由于国外的镜像仓库目前不能访问,所以我们需要配置一个其他的镜像源地址

        1.在etc下创建docker目录

mkdir -p /etc/docker

        2.进入docker目录

cd /etc/docker

        3.创建daemon.json文件

 touch daemon.json

        4.修改文件

 touch daemon.json

        地址之后可能无法使用,可能需要重新找配置地址

{ 	"registry-mirrors": ["https://dockerhub.icu"] }

        5.重载配置

systemctl daemon-reload

        6.重启

(如果重启失败,很有可能是daemon文件中的配置的格式有误)

systemctl restart docker

五、Docker命令

        1.镜像操作命令

        (1)从镜像仓库下载镜像到本地

docker pull 例如 docker pull mysql:8.0

        (2)查看本地镜像

docker images

         (3)删除docker镜像

docker rmi 镜像名:版本/镜像id

        (4)从docker保存镜像到Linux本地

        (需要保存到Linux中那个目录,进入到那个目录执行保存命令)

docker save 镜像名 > 镜像名.tar

        (5)从Linux本地加载镜像到docker中

docker save 镜像名 > 镜像名.tar

        2.容器操作命令

        (1)通过镜像安装

docker run 镜像名

        (2)查看容器

docker ps -a

        (3)启动镜像

docker start 容器名

        (4)停止容器

docker stop 容器名

        (5)删除容器(卸载)

docker rm 容器名

六、利用Docker安装应用

        1.安装MySQL

        (1)下载mysql镜像

        在线下载 docker pull mysql:8.0

        加载本地镜像 docker load

        (2)安装mysql容器

docker run 	参数 例:docker run -d -p 3306:3306 \ --name mysql \ --restart=always \ --privileged=true \ -e TZ=Asia/Shanghai \ -e MYSQL_ROOT_PASSWORD=root \ mysql:8.0

        (3)启动,停止,删除容器

docker start 容器名	启动容器 docker stop 容器名	停止容器 docker rm 容器名	删除容器 docker logs 容器名	查询容器日志

        (4)进入到容器中的命令行

docker exec -it 容器名 bash

        (5)退出

exit

        2.数据卷挂载

容器是封闭的,与外界隔离的,如果需要操作容器内的文件不方便

可以将容器内的目录与容器外(Linux)中的目录建立映射 挂载

        (1)创建mysql数据卷

mkdir -p /opt/mysql/data 

        (2)安装

与上面的安装相比,多了一行用来将数据存放在建立的数据卷中的代码指令

docker run -d -p 3306:3306 \ --name mysql \ --restart=always \ --privileged=true \ -e TZ=Asia/Shanghai \ -e MYSQL_ROOT_PASSWORD=root \ -v /opt/mysql/data:/var/lib/mysql \ mysql:8.0

        3.安装Nginx

        nginx是一个高性能的前端程序服务器,支持最大50000个并发连接

        (1)拉取镜像

docker pull nginx:1.24 

        (2)创建数据卷

mkdir -p /opt/nginx/html

        (3)安装命令

docker run -d -p 80:80 \ --name nginx \ --restart=always \ --privileged=true \ -v /opt/nginx/html:/usr/share/nginx/html \ nginx:1.24 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!