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目录下即可

相关推荐
分布式存储与RustFS2 小时前
给 RustFS 桶加一层内存缓存:用 Alluxio 让热数据少跑一遍网络
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
余槐i3 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
csdn_aspnet3 小时前
如何在本地 Docker 容器中运行 Redis,并使用 Redis Insight 和 Redis CLI 进行管理
redis·docker·容器
Decay__4 小时前
22_MySQL 运维自动化平台 —— 部署编排 + 监控 + 巡检 + 告警 + 工单闭环一体化
运维·数据库·sql·mysql·架构
且从容.4 小时前
Ubuntu 安装 Docker
linux·ubuntu·docker
todoitbo4 小时前
我在 Mac 上用 Docker 部署 Nexent:从拉取镜像到接入模型
macos·docker·大模型·ai智能体·nexent·快速入门与环境准备
迪康coolmu5 小时前
企业U盘管控落地实战:基于迪康端点安全一体化管理系统的移动存储安全实践
运维·人工智能·经验分享·笔记·安全·电脑
Decay__5 小时前
21_MySQL 优化案例集 —— 慢 SQL 优化、索引重构与参数调整收益对比
运维·数据库·sql·mysql·架构
Goboy5 小时前
夯爆了,我被一个一句话接入的免费可观测平台策反了,那一刻我决定放弃用了3年的Prometheus
后端·docker·kubernetes