Docker安装 ▎Docker详细讲解 ▎数据卷挂载 ▎Nginx安装理解

10,283次阅读
没有评论

共计 3024 个字符,预计需要花费 8 分钟才能阅读完成。

前言

Docker 是一种容器化技术,简化软件的部署和管理。文章详细解释了 Docker 的架构、安装步骤和常用命令,帮助用户快速启动和管理容器。还介绍了 Docker 镜像命令和数据卷挂载的实例,增强对持久化存储的理解,并涵盖了 Nginx 的安装方法,支持 Web 应用的使用

Docker 概述

什么是 docker

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解
  • Docker 是一个应用打包、分发、部署的容器
  • 诞生于 2013 年,基于 Go 语言实现
  • Docker 可以让开发者打包他们的应用以及依赖包到一个 轻量级、可移植的容器 中,然后发布到任何流行的 Linux 机器上
  • 容器是完全使用沙箱机制,相互隔离
  • 容器性能开销极低
  • 你也可以把它理解为一个轻量的虚拟机,它只虚拟你软件需要的运行环境,多余的一点都不要,而 普通虚拟机则是一个完整而庞大的系统,包含各种不管你要不要的软件

Linux 软件安装

以前通过 yum 命令安装软件, 是直接把软件安装到 Linux 系统中, 安装和卸载都比较麻烦, 因为软件和系统是强关联

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

Docker 是一种容器技术, 可以将我们 应用和依赖进行打包, 制作出一个镜像(软件安装包及相关依赖), 可以在 Linux,Windows 中的 docker 中运行

Docker 采用沙箱隔离机制, 部署运行软件之间相互隔离, 与操作系统也是隔离的

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

Docker 架构

Docker 实际也是一个小型的虚拟机, 一个部署在 Linux 虚拟机中的管理安装删除等应用管理的一个虚拟机架构.

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解
  1. 打包: 就是把你软件运行所需的依赖、第三方库、软件打包到一起,变成一个安装包
  2. 分发: 你可以把你打包好的 ” 安装包 ” 上传到一个镜像仓库,其他人可以非常方便的获取和安装
  3. 部署: 拿着 ” 安装包 ” 就可以一个命令运行起来你的应用,自动模拟出一摸一样的运行环境,不管是在 Windows/Mac/Linux

Docker 安装

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

yum install -y yum-utils

设置更新 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 版本

docker -v

启动常用命令

docker 安装成功后并没有启动

启动命令 systemctl start docker

关闭命令 systemctl stop docker

设置开机自动启动 systemctl enable docker

Docker 配置

在 etc 下创建 docker 目录

mkdir -p /etc/docker

进入 docker 目录

cd /etc/docker

创建 daemon.json 文件

touch daemon.json

修改文件

vim daemon.json
{

“registry-mirrors”: [“https://dockerhub.icu“]

}

注: 修改文件操作为更换docker 的镜像下载地址

重载配置

systemctl daemon-reload

重启

systemctl restart docker

Docker 镜像命令

Docker 镜像命令, 就是对镜像文件操作的命令

docker pull 镜像名 从远程仓库拉去镜像文件

docker images 查看本地镜像

docker rmi 镜像名 删除镜像

docker load -i 镜像文件 加载本地镜像

docker build 从 dockerfile 构建镜像

docker save 保存镜像到本地, 生成 tar 文件

docker push 推送镜像到服务器

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

Docker 容器命令

docker run 镜像名 创建一个新的容器

docker ps -a 查看容器

docker start 容器名 启动容器

docker stop 容器名 停止容器

docker rm 容器名 删除容器

docker logs 容器名 查看容器日志

注意: 删除容器, 需要停止运行后, 再吧容器删除, 然后删除镜像

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

Docker 安装镜像(例 mysql)

安装常见参数(docker run 命令的常见参数)

  1. –name:指定容器名称
  2. –restart=always 自动启动
  3. –privileged=true 拥有特权
  4. -p:指定端口映射
  5. -d:让容器后台运行

下载镜像

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

进入容器

docker exec -it 容器名 / 容器 id bash

注: 我们登录 mysql 前需要注意我们的 mysql 密码有没有加密

修改 root 账号加密方式(以下演示的为作者的加密规则)

ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘root’;

登录 mysql

mysql -uroot -proot

解释代码:

-u 后面跟随的为账号

-p 后面跟随的为账号密码

退出

exit

数据卷挂载

由于容器内的目录操作起来不太方便, 例如 mysql 数据目录,toncat 项目部署目录, 所以可以在 Linux(宿主机)中创建一个目录, 在运行镜像时,把宿主机中的目录和容器内目录建立映射关系,后期运行产生数据, 就可以存储在宿主机中的映射目录中宿主机中的目录称为数据卷.

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

例:mysql 数据挂载实现

创建 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

  • Nginx 是一款是由俄罗斯的程序设计师所开发高性能的 Web 服务器 **(只能运行前端项目, 不能运行 java 项目)**。
  • 其特点是占有 内存少 , 并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中表现较好,中国大陆使用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等等。
  • Nginx 专为性能优化而开发,性能是服务器最重要的考量,实现上非常 注重效率,能经受高负载的考验,据报告能支持高达 50,000 个并发连接数

安装 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

感谢大家的观看,本次分享就到这里。希望我的内容能够对您有所帮助。创作不易,欢迎大家多多支持,您的每一个点赞都是我持续更新的最大动力!如有不同意见,欢迎在评论区积极讨论,让我们一起学习、共同进步!如果有相关问题,也可以私信我,我会认真查看每一条留言。期待下次再见!

希望路飞的笑容可以治愈努力路途中的你我!

Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

博主 vx:Dreamkid05 —>欢迎大家和博主讨论问题

文章来源: Docker 安装 ▎Docker 详细讲解 ▎数据卷挂载 ▎Nginx 安装理解

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-09-19发表,共计3024字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)