Windows系统|零基础上手Docker(1)

154 阅读4分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第6天,点击查看活动详情

🎐 放在前面说的话

大家好,我是北 👧🏻

本科在读,此为日常捣鼓.

如有不对,请多指教,也欢迎大家来跟我讨论鸭 👏👏👏

还有还有还有很重要的,麻烦大可爱们动动小手,给北点颗心心♥,北北需要鼓励嗷呜~

今天我们来浅尝一下Docker的安装与镜像制作。

image.png

Let’s get it!

一、🔓解锁Docker

Docker优势

  • 无系统兼容问题
  • 支持多版本共存
  • 用完就丢
  • 一个命令就安装ok

Docker是什么?干嘛用的?

  1. Docker 是一个应用打包、分发、部署的工具
  • 打包:把软件运行需要的依赖、第三方库、软件打包成“安装包”

  • 镜像(安装包):类似软件安装包

  • 容器:镜像安装后,运行环境独立

  • 分发:把“安装包”上传至镜像仓库,共享

  • 部署:用“安装包”就可以一个命令运行我们的应用,不管是Windows还是Mac或者其他系统,都自动模拟一样的运行环境

  1. 用于虚拟软件所需运行环境(确保了不同机器上跑都是一致的运行环境)

Docker和普通虚拟机的区别

特性Docker普通虚拟机
启动速度启动快速属于秒级别需要几分钟启动时间
性能损耗需要资源少,只需模拟镜像所需环境,几乎没有性能损耗需要模拟整个系统环境,性能损耗高,占存大
隔离性隔离性较弱,进程间的隔离隔离性较好,系统间的隔离
安全性安全性弱,Docker 的租户 root 和宿主机 root 等同,Docker租户权限提升,它就直接具备了宿主机的 root 权限安全性强,租户 root 权限和宿主机的 root 虚拟机权限是分离的,并且虚拟机有硬件隔离技术
稳定性稳定性好,不同系统都一样部署方式稳定性不高,不同系统差异大
安装方式一个命令搞定,并自动配置好环境手动安装所有

1.Docker安装连接

桌面版

服务器版

2.手动安装linux子系统

命令行安装 Linux 子系统(这步可能不需要,因为 docker 安装时有说自动安装wsl

wsl --install -d Ubuntu

3.设置Hypervisor

设置开机启动 Hypervisor(管理员权限打开powershell)

bcdedit /set hypervisorlaunchtype auto

4.确认已经开启BIOS虚拟化

image.png

5.镜像加速源

顾名思义,加速下载镜像的东西。就是已经有人同步好了那些镜像,放在了国内的服务器,我们下载下来就会快很多。

image.png

镜像加速器镜像加速器地址
Docker 中国官方镜像registry.docker-cn.com
DaoCloud 镜像站f1361db2.m.daocloud.io
Azure 中国镜像dockerhub.azk8s.cn
科大镜像站docker.mirrors.ustc.edu.cn
阿里云.mirror.aliyuncs.com
七牛云reg-mirror.qiniu.com
网易云hub-mirror.c.163.com
腾讯云mirror.ccs.tencentyun.com

二、📢Docker安装软件

Docker官方镜像仓库

🎬演示——安装MySQL

1.Docker官方镜像仓库搜索MySQL

image.png 寻找自己所要的版本和安装命令

2.安装 启动

打开powershell,根据前面官网找到的版本和安装命令,一个命令跑起来:

docker run --name mysql -e MYSQL_ROOT_PASSWORD=123123 -d mysql:8.0

mysql:自定义mysql名字

123123:自定义mysql密码

8.0: 下载版本

三、💿制作镜像

1.编写Dockerfile

编写前需要对项目 go build一下下

  • 维护者信息:该Dockerfile编写人的姓名或邮箱
  • 基础镜像:以哪个镜像作为基础进行制作
    FROM [基础镜像名称:版本]
  • 镜像操作命令:对基础镜像要进行的改造命令,比如安装新的软件,进行哪些特殊配置等
    RUN [命令]
  • 容器启动命令:当基于该镜像的容器启动时需要执行哪些命令
    CMD [命令]或ENTRYPOINT [命令]
# 基础镜像
FROM ubuntu:latest
# 镜像操作命令
RUN mkdir /app
# 设置容器启动后的默认运行目录
WORKDIR /app
# 将可执行文件复制进镜像文件中  从命名/app
COPY docker-demo.exe /app/app
# 容器启动命令
ENTRYPOINT[ "./app" ]

2.build 为镜像和运行

1)编译

docker build -t test:v1 .

-t 设置镜像名字和版本号
 镜像构建过程中的上下文环境的目录

2)查看镜像列表

docker images

3)运行

docker run -p 8080:8080 --name test-hello test:v1

-p 映射容器内端口到宿主机
--name 容器名字
-d 后台运行

4)查看容器

docker ps -a

去8080康康:

🎉 放在后面说的话

以上简单地介绍了Docker的优势、与虚拟机的区别,如何在Windows系统上安装Docker、Docker上下载我们需要的镜像并运行、以及镜像的制作。后续还会写一下关于Docker的目录挂载、发布和部署等