linux软件安装
以前通过yum命令安装软件,是直接把软件安装到linux系统中,安装和卸载都比较麻烦,因为软件和系统是强关联
1.docker概念
docker是一种容器技术,解决软件和系统强关联关系,使得软件的安装和卸载非常方便。
docker是一种容器技术,可以将我们的应用以及依赖进行打包,制作出一个镜像(软件安装包以及相关依赖),可以在linux/windows中的docker中运行。
docker采用沙箱隔离机制,部署运行软件之间相互隔离,与操作系统也是隔离的。
2.主要功能
3.docker架构
4.docker安装
mkdir -p /etc/docker
2.设置更新docker镜像源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
docker安装成功后并没有启动,
启动命令
systemctl start docker
关闭命令
systemctl stop docker
设置开机自动启动
systemctl enable docker
5.docker配置
主要是配置docker国内的镜像源地址。
mkdir -p /etc/docker
cd /etc/docker
touch daemon.json
修改文件
vim daemon.json
{
"registry-mirrors": ["https://dockerhub.icu"]
}
systemctl daemon-reload
systemctl restart docker
6.docker镜像命令
docker镜像命令,就是对镜像文件操作的命令
从远程仓库拉取镜像文件 docker pull 镜像名 查看本地镜像 docker images 删除镜像(删除镜像前,需要先删除对应容器) docker rmi 镜像名加载本地镜像 docker 镜像 load保存镜像到本地,生成tar文件 docker save
7.docker容器命令
运行容器 docker run 一系列配置 镜像名查看容器 docker ps -a启动容器 docker start 容器名停止容器 docker stop 容器名删除容器 (删除容器前,先停止容器) docker rm 容器名查看容器日志 docker logs 容器名进入到docker容器中 docker exec -it 容器名/容器id bash
8.数据卷挂载
由于容器内的目录操作起来不太方便,例如mysal数据目录,toncat项目部署目录.所以可以在linux(宿主机中创建一个目录,在运行镜像时,把宿主机中的目录和容器内目录建立映射关系,后期运行产生数据,就可以存储在宿主机中的映射目录中宿主机中的目录称为数据卷.
实例:
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
9.Docker安装nginx
docker load -i nginx.tar
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
10.Docker安装Mysql
docker load -i mysql.tar
安装
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
11.Docker卸载
停止服务
systemctl stop docker
卸载
yum remove docker-ce docker-ce-cli containerd.io docker-compose-plugin
rm -rf /var/lib/docker
rm -rf /var/lib/containerd