Docker

Docker

概述

在linux中软件安装: 以前在linux中安装软件,是直接安装在linux操作系统中,软件和操作系统耦合度很高,不方便管理,因为linux版本不同,环境也不同.

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

总结: docker是一种容器技术,解决软件跨环境迁移的问题

主要功能

打包:就是把你软件运行所需的依赖、第三方库、软件打包到一起,变成一个安装包

分发:你可以把你打包好的"安装包"上传到一个镜像仓库,其他人可以非常方便的获取和安装

部署:拿着"安装包"就可以一个命令运行起来你的应用,自动模拟出一摸一样的运行环境,不管是在 Windows/Mac/Linux。

docker安装

1.安装yum-utils,配置镜像源需要使用

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

启动常用命令

docker安装成功后并没有启动, 启动命令 systemctl start docker

关闭命令 systemctl stop docker

设置开机自动启动 systemctl enable docker

docker配置镜像源

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

Docker镜像命令

docker命令分两大类:

1.镜像操作命令

从镜像仓库下载镜像到docker本地

docker pull
例如 docker pull mysql:8.0

查看本地镜像

docker images

删除docker镜像

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

从docker保存镜像到linux本地(需要保存到linux那个目录,进入到指定目录执行保存命令)

docker save 镜像名 > 镜像名.tar

从linux本地加载镜像到docker中

docker load 镜像名 < 镜像名.tar

2.容器操作命令

通过镜像安装

docker run 镜像名

查看容器

 docker ps -a

启动镜像

docker start 容器名

停止容器

docker stop 容器名

删除容器(卸载)

 docker rm 容器名

安装mysql

1.下载mysql镜像

在线下载 docker pull mysql:8.0

加载本地镜像 docker load

2.安装mysql容器

docker run 

  参数

3.启动 停止 删除容器

docker start 容器名  启动容器

docker stop 容器名  停止容器

docker rm 容器名 删除容器
docker logs 容器名 查询容器日志

4.进入到容器中的命令行

docker exec -it 容器名  bash

数据卷挂载

容器是封闭的,与外界隔离,如果需要操作容器内的文件 不方便,可以将容器内的目录与容器外(linux)中的目录

Docker安装Nginx

是一款是由俄罗斯的程序设计师所开发高性能的 Web服务器(只能运行前端项目,不能运行 java项目)。

其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好, 中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等等。

Nginx专为性能优化而开发,性能是服务器最重要的考量,实现上非常注重效率,能经受高负载的 考验,据报告能支持高达50,000个并发连接数。

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

拉取镜像

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

其中 -v /opt/nginx/html 就是与容器中对应的一个在宿主机中的数据卷 我们只需要将文件部署到宿主机的/opt/nginx/html目录下即可

相关推荐
烦躁的大鼻嘎25 分钟前
【Linux】深入理解GCC/G++编译流程及库文件管理
linux·运维·服务器
乐大师25 分钟前
Deepin登录后提示“解锁登陆密钥环里的密码不匹配”
运维·服务器
ac.char32 分钟前
在 Ubuntu 上安装 Yarn 环境
linux·运维·服务器·ubuntu
敲上瘾32 分钟前
操作系统的理解
linux·运维·服务器·c++·大模型·操作系统·aigc
梅见十柒1 小时前
wsl2中kali linux下的docker使用教程(教程总结)
linux·经验分享·docker·云原生
传而习乎2 小时前
Linux:CentOS 7 解压 7zip 压缩的文件
linux·运维·centos
soulteary2 小时前
突破内存限制:Mac Mini M2 服务器化实践指南
运维·服务器·redis·macos·arm·pika
运维&陈同学3 小时前
【zookeeper01】消息队列与微服务之zookeeper工作原理
运维·分布式·微服务·zookeeper·云原生·架构·消息队列
是阿建吖!3 小时前
【Linux】进程状态
linux·运维
明明跟你说过3 小时前
Linux中的【tcpdump】:深入介绍与实战使用
linux·运维·测试工具·tcpdump