1.1.Docker

0) Download Docker

Docker 因为其灵活性和资源占用少等优势开始取代过去传统的虚拟机(如VMWARE, Virtual Box等)。Docker在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker技术比传统虚拟机技术更为轻便、快捷(为什么使用Docker)。
如果遇到使用问题,还可以参考官网的 这篇文章

0.1) Download Docker app (程序)

读者可以去 官方下载页面 获取对应不同操作系统的docker软件的安装程序。(需要注册账号)
系统要求
  • Mac: 2010 or newer model
  • Linux: kernel 3.10 or higher
  • Windows: 10 pro及以上 (64位)
Windows 10 非pro版本的读者请注意:因为只有pro版本才能安装docker程序,所以我们强烈建议您升级pro版本,清华官方有免费的校园正版下载。或者在自己的电脑上安装Linux双系统。

0.2) Download Docker image (镜像)

我们为读者提供了我们为本课程制作的用于Docker的image(镜像),下载链接如附表所示.
首先,请大家安装Docker程序并下载image文件到桌面,桌面的默认路是: ~/Desktop
安装和加载图示:

1) Prepare Docker in Mac

1.0) Install Docker app (程序) in Mac

docker程序在Mac上的安装很简单,可以通过Apple Store安装,或者直接从 官网 下载 Docker安装程序后进行安装。

1.1) Start a Terminal and load a Docker image (镜像)

请先双击运行docker程序,然后从“/Applications⁩/⁨Utilities” 中打开 "Terminal" 软件,开始"Load a Docker image (镜像)"以及后面的操作;
以下命令默认都是在“Terminal”中运行。
1
docker load -i ~/Desktop/bioinfo_PartI-PartII-PartIII1-3.tar.gz #load the image
Copied!
注: “#”以及"#"之后的内容是注释语句,实际操作中不用输入。

1.2) Create a container (容器)

1
mkdir ~/Desktop/bioinfo_tsinghua_share
2
3
docker run --name=bioinfo_tsinghua -dt -h bioinfo_docker --restart unless-stopped -v ~/Desktop/bioinfo_tsinghua_share:/home/test/share xfliu1995/bioinfo_tsinghua:2
Copied!
这里我们新建了一个名为 bioinfo_tsinghua 的container (容器)(除非有特殊说明,接下来的章节中所有操作均在该容器中进行)。
参数说明:
  • 设置该容器能一直在后台保持运行状态(-dt --restart unless-stopped
  • 主机(HOST, 例如Mac或者Windows)和docker容器(例如Linux)设置了一个文件夹同步,可以互传文件:
    • HOST: ~/Desktop/bioinfo_tsinghua_share == LINUX: /home/test/share
到此为止,我们已经成功地安装了Docker程序,成功地载入一个镜像 (image) 并且创建了容器(container)。

1.3) Run and exit the container

使用一个容器(例如上节中开启的容器:"bioinfo_tsinghua") 进行练习,只需要反复执行如下3个步骤:
注:每次使用容器时要检查docker程序是否运行了,否则请双击docker程序图标运行docker程序
  • a) 运行容器: 在Terminal/Power shell中输入 docker exec -it bioinfo_tsinghua bash
  • b) 进行Linux系统的相关操作,如下图
  • c) 退出容器:exit
docker

2) Prepare Docker in Windows 10 pro 64

2.0) Install Docker app (程序) in Windows 10

2.0.a) Update your operating system to Win10 Pro

首先升级你的windows系统到Win10专业版及其以上,才可以进行docker的安装

2.0.b) Download and install Docker app

官网 下载 Docker,并进行安装。

2.0.c) Install Windows Subsystem for Linux

由于docker的运行需要依赖WSL2,因此需要将系统的WSL1升级到WSL2,否则可能出现报错。如果windows系统中已升级为WSL2则不需要处理,可以按照下面的步骤进行升级。
  • Step 1 - Enable the Windows Subsystem for Linux
(1) Open PowerShell as Administrator and run:
1
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Copied!
(2) restart your machine
  • Step 2 - Update to WSL 2
    (1) enable the Virtual Machine Platform optional feature
    1
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    Copied!
    (2) Download WSL2 Linux kernel update package for x64 machines
(3) Set WSL 2 as your default version
1
wsl --set-default-version 2
Copied!
更多升级WSL2的教程,可见 这里

2.1) Restart

安装完成后,选择Enable & Restart以启用Hyper-V

2.2) Start a Power shell

在开始菜单搜索 PowerShall, 并启动。

2.3) Check the installation

输入以下命令,检查 Docker 程序是否成功安装。

2.4) Load a Docker image (镜像)

将 Docker image下载到桌面,并且通过在 Power shell 中输入以下命令导入将镜像导入到 Docker 中。
1
docker load -i Desktop\bioinfo_PartI-PartII-PartIII1-3.tar.gz
Copied!

2.5) Create a container (容器)

首先,在桌面新建 bioinfo_tsinghua_share 文件夹用于共享文件
1
mkdir ~/Desktop/bioinfo_tsinghua_share
Copied!
然后,新建一个名为 bioinfo_tsinghua 的容器(除非有特殊说明,接下来的章节中所有操作均在该容器中进行)。
1
docker run --name=bioinfo_tsinghua -dt -h bioinfo_docker --restart unless-stopped -v ~/Desktop/bioinfo_tsinghua_share:/home/test/share bioinfo_tsinghua
Copied!
参数说明:
  • 设置该容器能一直在后台保持运行状态(-dt --restart unless-stopped
  • 主机 (Windows)和docker容器(例如Linux)设置了一个文件夹同步,可以互传文件:
    • Windows: ~/Desktop/bioinfo_tsinghua_share == LINUX: /home/test/share
在 Windows 10 Pro 上,我们在 Docker 中创建的 /home/test/share 归 root 所有,所以要将其改为归 test 用户所有。
1
docker exec -u root bioinfo_tsinghua chown test:test /home/test/share
Copied!
执行这一步时,系统会弹出以下提示,我们选择 Share it

2.6) Run and exit the container

如果容器创建成功,之后每次只需要启动Docker程序,然后在 Power shell 中输入以下命令即可进入容器:
1
docker exec -it bioinfo_tsinghua bash
Copied!
之后即可运行本教程中提供的 Linux 命令来执行任务;
任务完成后,输入 exit 即可回到 Power shell。

3) How to maintain Docker

3.1) Check if Docker app installed

以上三种用户安装完成后,均可打开 Terminal (Windows 下使用 PowerShell), > 运行以下命令,检查 Docker 是否正常安装:
1
docker info
Copied!

3.2) Check which containers are running

1
docker ps #查看当前正在运行的容器
2
docker ps -a #查看所有容器
3
docker images #查看所有镜像
Copied!

3.3) Delete a container

如果你不小心执行了错误操作,以至于无法正常执行本教程中的某一章节,可以删除该容器,然后新建一个干净的容器。
首先,
1
docker rm -f bioinfo_tsinghua
Copied!
Tips:之前提到过 bioinfo_tsinghua 一直保持运行状态,所以我们这里用 -f 来强制(force)删除。
然后,重复创建容器命令。

3.4) Clean

可以使用如下命令清理不再需要的文件:
1
rm ~/Desktop/bioinfo_tsinghua.docker.tar.gz # 删除下载的文件
Copied!
如果需要删除镜像,可以使用以下命令,请慎重使用该命令。
1
docker rmi bioinfo_tsinghua # 删除镜像
Copied!

4) Advanced configure of Docker

打开docker的控制菜单,通过 Preferences 选择卡来进行参数修改。
建议 CPUs 设置为4, 内存为7G, Swap为2G。
建议存储空间为90G。

5) References

这里推荐阅读两篇Docker安装教程,分别是《macOS 安装 Docker》《Windows 10 PC 安装 Docker CE》,来自于《Docker——从入门到实践》书,这本书对Docker进行了深入浅出的讲解,对于初学者理解和学习docker技术有所帮助。另外,网上也有很多docker教程,有深入学习兴趣的同学可以自行检索学习。
Last modified 7mo ago