概述
之前在Linux中安装软件,是直接安装在Linux操作系统中,软件和操作系统耦合度很高,不方便管理.因为Linux版本不同,环境也不同了.
是一种容器技术(软件),提供标准的应用镜像(包含应用+应用的依赖),我们就可以非常轻松的在docker中安装应用,每一个应用安装好后,就是一个独立的容器.
解决软件跨环境迁移的问题
主要功能:
打包:可以把软件以及软件依赖打包制作成一个镜像(安装包)
分发:把镜像上传到镜像仓库,方便别人获取和安装
部署:镜像可以一个命令使应用运行起来,不管在哪个系统,都可以自动模拟出一样的运行环境
docker安装
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
6.卸载
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配置镜像源
由于国外的镜像仓库目前不能访问,所以我们需要配置一个其他的镜像源地址
docker命令分为两大类:
1.镜像操作命令
从镜像仓库下载镜像到docker本地
docker pull
eg: docker pull mysql:8.0
查看本地镜像
docker images
删除本地镜像
docker rmi 镜像名/镜像id
eg: docker rmi mysql:8.0
从dockerfile构建镜像
从docker保存镜像到linux本地(需要保存到linux中那个目录,进入到指定目录执行保存命令),生成tar文件
docker save 镜像名 > 镜像名.tar
eg: docker save mysql > mysql.tar
从linux本地 加载镜像到docker中
docker load < 镜像名.tar
docker load < mysql.tar
2.容器操作命令
通过镜像安装
docker run 镜像名
查看容器
docker ps -a
启动镜像
docker start 容器名
停止容器
docker stop 容器名
删除容器
docker rm 容器名
docker log 容器名
安装mysql
1.下载mysql镜像
在线下载
docker pull mysql:8.0
加载本地镜像
docker run -d -p 3306:3306 \
--name mysql \
--restart=always \
--privileged=true \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=root \
mysql:8.0
--name:指定容器名称
--restart=always 自动启动
--privileged=true 拥有特权
-p:指定端口映射
-d:让容器后台运行
进入到容器
docker exec -it 容器名/容器id bash
docker exec -it mysql bash
登录mysql
mysql -uroot -proot
修改root账号加密方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
退出
exit
数据卷挂载
容器是封闭的,与外界隔离的,如果需要操作容器内的内容不方便
创建mysql数据卷
mkdir -p /opt/mysql/data
安装
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
安装nginx
拉取镜像
docker pull nginx:1.24
创建数据卷
mkdir -p /opt/nginx/html
安装命令
docker run -d -p 80:80 \
--name nginx \
--restart=always \
--privileged=true \
-v /opt/nginx/html:/usr/share/nginx/html \
nginx:1.24
访问
自己的ip:80
其中** -v /opt/nginx/html ****就是与容器中对应的一个在宿主机中的数据卷 **
我们只需要将文件部署到宿主机的/opt/nginx/html目录下即可
版权归原作者 Janemy_ 所有, 如有侵权,请联系我们删除。