文章目录[隐藏]
前言
背景
我有很多好玩的东西可以跟大家分享。但由于大部分代码并不像早安推送那样流程化,并且环境部署复杂,还容易搞乱系统。但最简单的办法——Docker 不能每次都讲一遍怎么安装和使用。因此我直接写这么一篇文章,希望可以提升大家使用各种不同工具的效率。
简介
Docker 是一个可以将代码运行在与主机隔离环境中的一个工具。简单解释,Docker 可以省去环境部署的麻烦。对于开发者来说,避免污染本地环境,也便于测试和不同环境下的部署;对于不会编程的同学来说,使用 Docker 是使用别人写好的代码又不会部署的最简单的部署方式了。
安装
Windows
WIndows 应该是最简单的安装流程了。
[点击此处](https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe)直接跳转到 Docker 官方最新版的下载地址,下载了安装程序安装即可。
Mac
通过 brew 安装
如果你的电脑中装有 brew 的话,安装 Docker 只需要在终端中输入
brew install homebrew/cask/docker
静静等待即可。
Linux
Linux 的安装方式很多,流程也很多,官方文档也比较复杂。以下我会分各种不同 Linux 发行版进行说明。
如果你是用服务器的话,建议使用 Ubuntu 系统,主要原因是我喜欢用 Ubuntu。
一键安装
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh ./get-docker.sh
这是 Docker 官方给的一键安装脚本,适用于所有 Linux 发行版。
Ubuntu
先放一个官方文档链接:
用自己的电脑连接终端,执行以下命令(直接复制粘贴即可)
Ubuntu Desktop
最近 Docker 增加了 Linux 下的桌面版 Docker。功能类似 Windows 和 Mac。如果你是自用 Ubuntu,这里可以直接安装桌面版。
使用
功能介绍
首先,Docker 的机制意味着有以下几种常用功能。使用的话,可以直接使用 Windows 或 Mac 下的 Docker 工具。推荐使用命令行运行。命令行推荐:
Windows: PowerShell
Mac: iTerm 或者系统自带终端 Terminal
Ubuntu: 自带终端就可以了,一般会使用 ssh
为小白用户讲一些基本操作
Docker 虽然在 Windows 上可以使用图形界面,但我们操作起来更容易的话还得是命令行。命令行就是电脑里都会有的一个东西。通过输入文字来执行命令。那么一起来试一下:
用 Windows 的搜索功能,查找一个叫做 Windows Powershell 的东西。这个就是 Windows 10 之后的命令行。如果你的电脑还是 Windows 7 的话,搜索命令提示符即可。
这个界面下,可以输入各种命令来执行。举几个简单的例子。输入 `ls` 然后按下回车,就会显示当前所在目录下所有的文件和文件夹。输入 `cd 目录名` 然后回车可以进入这个目录。用这个方式加上下面的基本教学,可以实现很多之前没有办法详细讲述的东西了。
Image
简单说就是别人(或者是自己)写好的现成的镜像。一般开发时,这个镜像会包含基础的系统、代码环境。对于使用者来说,镜像里是封装好了可执行程序和基础环境的一个包。也就是说,平时教程里提到的拉取镜像就是这个东西。
常用命令如下:
docker images 展示当前系统已有的所有镜像
docker pull xxx 将 xxx 镜像从 Docker Hub 拉取下来
docker rmi xxx # 将 xxx 镜像移除
docker run [--rm] [-it] [-d] [-v path:path] [--name xxx] [-d env_name=env_value] xxx # 运行 Docker 镜像
Container
Image 是不会在本地会被改变的。在本地运行的时候,会创建一个在此基础上运行的层。所有的改动都在这个层里,不会影响原有镜像。这个层就叫 Container。
常用命令如下:
docker ps [-a] # 查看所有运行中容器(加上 -a 就是包括已停止的)
docker exec -it xxx 命令 # 运行 xxx 镜像的命令,前提是此容器去是运行状态。
docker start/stop/restart xxx # 启动/停止/重启 容器
docker logs [-f] xxx # 查看容器日志。-f 的话就是如果有新的日志会跟着展示出来
其他
可以边用边介绍。