Update format

Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
This commit is contained in:
Kang HuaiShuai 2019-09-20 14:28:50 +08:00
parent 1aef2b7734
commit 4873267f31
No known key found for this signature in database
GPG Key ID: 0A380828B1C243A7
6 changed files with 25 additions and 25 deletions

View File

@ -1,9 +1,9 @@
# 操作系统 # 操作系统
目前常用的 Linux 发行版主要包括 Debian/Ubuntu 系列和 CentOS/Fedora 系列 目前常用的 Linux 发行版主要包括 `Debian/Ubuntu` 系列和 `CentOS/Fedora` 系列
前者以自带软件包版本较新而出名后者则宣称运行更稳定一些选择哪个操作系统取决于读者的具体需求 前者以自带软件包版本较新而出名后者则宣称运行更稳定一些选择哪个操作系统取决于读者的具体需求
使用 Docker读者只需要一个命令就能快速获取一个 Linux 发行版镜像这是以往包括各种虚拟化技术都难以实现的这些镜像一般都很精简但是可以支持完整 Linux 系统的大部分功能 使用 Docker读者只需要一个命令就能快速获取一个 Linux 发行版镜像这是以往包括各种虚拟化技术都难以实现的这些镜像一般都很精简但是可以支持完整 Linux 系统的大部分功能
本章将介绍如何使用 Docker 安装和使用 BusyboxAlphineDebian/UbuntuCentOS/Fedora 等操作系统 本章将介绍如何使用 Docker 安装和使用 `Busybox``Alphine``Debian/Ubuntu``CentOS/Fedora` 等操作系统

View File

@ -33,15 +33,15 @@ $ docker run alpine echo '123'
### 迁移至 `Alpine` 基础镜像 ### 迁移至 `Alpine` 基础镜像
目前大部分 Docker 官方镜像都已经支持 Alpine 作为基础镜像可以很容易进行迁移 目前大部分 Docker 官方镜像都已经支持 `Alpine` 作为基础镜像可以很容易进行迁移
例如 例如
* ubuntu/debian -> alpine * `ubuntu/debian` -> `alpine`
* python:2.7 -> python:2.7-alpine * `python:3` -> `python:3-alpine`
* ruby:2.3 -> ruby:2.3-alpine * `ruby:2.6` -> `ruby:2.6-alpine`
另外如果使用 `Alpine` 镜像替换 `Ubuntu` 基础镜像安装软件包时需要用 apk 包管理器替换 apt 工具 另外如果使用 `Alpine` 镜像替换 `Ubuntu` 基础镜像安装软件包时需要用 `apk` 包管理器替换 `apt` 工具
```bash ```bash
$ apk add --no-cache <package> $ apk add --no-cache <package>

View File

@ -4,13 +4,13 @@
![Busybox - Linux 瑞士军刀](_images/busybox-logo.png) ![Busybox - Linux 瑞士军刀](_images/busybox-logo.png)
BusyBox 是一个集成了一百多个最常用 Linux 命令和工具 catechogrepmounttelnet 的精简工具箱它只需要几 MB 的大小很方便进行各种快速验证被誉为Linux 系统的瑞士军刀 `BusyBox` 是一个集成了一百多个最常用 Linux 命令和工具 `cat``echo``grep``mount``telnet` 的精简工具箱它只需要几 MB 的大小很方便进行各种快速验证被誉为Linux 系统的瑞士军刀
BusyBox 可运行于多款 POSIX 环境的操作系统中 Linux包括 AndroidHurdFreeBSD `BusyBox` 可运行于多款 POSIX 环境的操作系统中 `Linux`包括 `Android``Hurd``FreeBSD`
### 获取官方镜像 ### 获取官方镜像
Docker Hub 中搜索 busybox 相关的镜像 Docker Hub 中搜索 `busybox` 相关的镜像
```bash ```bash
$ docker search busybox $ docker search busybox
@ -24,7 +24,7 @@ azukiapp/busybox This image is meant to be used as the base...
... ...
``` ```
读者可以看到最受欢迎的镜像同时带有 OFFICIAL 标记说明它是官方镜像用户使用 docker pull 指令下载镜像 `busybox:latest` 读者可以看到最受欢迎的镜像同时带有 `OFFICIAL` 标记说明它是官方镜像用户使用 `docker pull` 指令下载 `busybox:latest` 镜像
```bash ```bash
$ docker pull busybox:latest $ docker pull busybox:latest
@ -36,7 +36,7 @@ df7546f9f060: Pull complete
Status: Downloaded newer image for busybox:latest Status: Downloaded newer image for busybox:latest
``` ```
下载后可以看到 busybox 镜像只有2.433 MB 下载后可以看到 `busybox` 镜像只有 2.433 MB
```bash ```bash
$ docker image ls $ docker image ls
@ -46,7 +46,7 @@ busybox latest e72ac664f4f0 6 weeks ago
### 运行 busybox ### 运行 busybox
启动一个 busybox 容器并在容器中执行 grep 命令 启动一个 `busybox` 容器并在容器中执行 `grep` 命令
```bash ```bash
$ docker run -it busybox $ docker run -it busybox
@ -103,7 +103,7 @@ proc on /proc/bus type proc (ro,nosuid,nodev,noexec,relatime)
tmpfs on /proc/kcore type tmpfs (rw,nosuid,mode=755) tmpfs on /proc/kcore type tmpfs (rw,nosuid,mode=755)
``` ```
busybox 镜像虽然小巧但包括了大量常见的 Linux 命令读者可以用它快速熟悉 Linux 命令 `busybox` 镜像虽然小巧但包括了大量常见的 Linux 命令读者可以用它快速熟悉 Linux 命令
### 相关资源 ### 相关资源

View File

@ -2,11 +2,11 @@
### CentOS 系统简介 ### CentOS 系统简介
CentOS Fedora 都是基于 Redhat 的常见 Linux 分支CentOS 是目前企业级服务器的常用操作系统Fedora 则主要面向个人桌面用户 `CentOS` `Fedora` 都是基于 `Redhat` 的常见 Linux 分支`CentOS` 是目前企业级服务器的常用操作系统`Fedora` 则主要面向个人桌面用户
![CentOS 操作系统](_images/centos-logo.png) ![CentOS 操作系统](_images/centos-logo.png)
CentOSCommunity Enterprise Operating System中文意思是社区企业操作系统它是基于 Red Hat Enterprise Linux 源代码编译而成由于 CentOS Redhat Linux 源于相同的代码基础所以很多成本敏感且需要高稳定性的公司就使用 CentOS 来替代商业版 Red Hat Enterprise LinuxCentOS 自身不包含闭源软件 CentOSCommunity Enterprise Operating System中文意思是社区企业操作系统它是基于 Red Hat Enterprise Linux 源代码编译而成由于 CentOS Redhat Linux 源于相同的代码基础所以很多成本敏感且需要高稳定性的公司就使用 `CentOS` 来替代商业版 Red Hat Enterprise LinuxCentOS 自身不包含闭源软件
#### 使用 CentOS 官方镜像 #### 使用 CentOS 官方镜像
@ -19,7 +19,7 @@ centos The official... 2543 [OK]
jdeathe/centos-ssh 27 [OK] jdeathe/centos-ssh 27 [OK]
``` ```
使用 docker run 直接运行最新的 CentOS 镜像并登录 bash 使用 docker run 直接运行最新的 CentOS 镜像并登录 `bash`
```bash ```bash
$ docker run -it centos bash $ docker run -it centos bash
@ -36,7 +36,7 @@ CentOS Linux release 7.2.1511 (Core)
![Fedora 操作系统](_images/fedora-logo.png) ![Fedora 操作系统](_images/fedora-logo.png)
Fedora Fedora Project 社区开发红帽公司赞助的 Linux 发行版它的目标是创建一套新颖多功能并且自由和开源的操作系统Fedora 的功能对于用户而言它是一套功能完备的可以更新的免费操作系统而对赞助商 Red Hat 而言它是许多新技术的测试平台被认为可用的技术最终会加入到 Red Hat Enterprise Linux `Fedora` Fedora Project 社区开发红帽公司赞助的 Linux 发行版它的目标是创建一套新颖多功能并且自由和开源的操作系统`Fedora` 的功能对于用户而言它是一套功能完备的可以更新的免费操作系统而对赞助商 Red Hat 而言它是许多新技术的测试平台被认为可用的技术最终会加入到 Red Hat Enterprise Linux
#### 使用 Fedora 官方镜像 #### 使用 Fedora 官方镜像
@ -51,7 +51,7 @@ gluster/gluster-fedora Official GlusterFS image [ Fedora 21 + Glu... 3
startx/fedora Simple container used for all startx based... 2 [OK] startx/fedora Simple container used for all startx based... 2 [OK]
``` ```
使用 docker run 命令直接运行 Fedora 官方镜像并登录 bash 使用 `docker run` 命令直接运行 `Fedora` 官方镜像并登录 `bash`
```bash ```bash
$ docker run -it fedora bash $ docker run -it fedora bash

View File

@ -1,11 +1,11 @@
## Debian/Ubuntu ## Debian/Ubuntu
Debian Ubuntu 都是目前较为流行的 Debian 系的服务器操作系统十分适合研发场景Docker Hub 上提供了官方镜像国内各大容器云服务也基本都提供了相应的支持 `Debian` `Ubuntu` 都是目前较为流行的 Debian 系的服务器操作系统十分适合研发场景Docker Hub 上提供了官方镜像国内各大容器云服务也基本都提供了相应的支持
### Debian 系统简介 ### Debian 系统简介
![Debian 操作系统](_images/debian-logo.png) ![Debian 操作系统](_images/debian-logo.png)
Debian 是由 GPL 和其他自由软件许可协议授权的自由软件组成的操作系统Debian 计划Debian Project组织维护Debian 计划是一个独立的分散的组织 3000 人志愿者组成接受世界多个非盈利组织的资金支持Software in the Public Interest 提供支持并持有商标作为保护机构Debian 以其坚守 Unix 和自由软件的精神以及其给予用户的众多选择而闻名现时 Debian 包括了超过 25,000 个软件包并支持 12 个计算机系统结构 `Debian` 是由 `GPL` 和其他自由软件许可协议授权的自由软件组成的操作系统 Debian 计划Debian Project组织维护Debian 计划是一个独立的分散的组织 3000 人志愿者组成接受世界多个非盈利组织的资金支持Software in the Public Interest 提供支持并持有商标作为保护机构Debian 以其坚守 Unix 和自由软件的精神以及其给予用户的众多选择而闻名现时 Debian 包括了超过 25,000 个软件包并支持 12 个计算机系统结构
Debian 作为一个大的系统组织框架其下有多种不同操作系统核心的分支计划主要为采用 Linux 核心的 Debian GNU/Linux 系统其他还有采用 GNU Hurd 核心的 Debian GNU/Hurd 系统采用 FreeBSD 核心的 Debian GNU/kFreeBSD 系统以及采用 NetBSD 核心的 Debian GNU/NetBSD 系统甚至还有利用 Debian 的系统架构和工具采用 OpenSolaris 核心构建而成的 Nexenta OS 系统在这些 Debian 系统中以采用 Linux 核心的 Debian GNU/Linux 最为著名 Debian 作为一个大的系统组织框架其下有多种不同操作系统核心的分支计划主要为采用 Linux 核心的 Debian GNU/Linux 系统其他还有采用 GNU Hurd 核心的 Debian GNU/Hurd 系统采用 FreeBSD 核心的 Debian GNU/kFreeBSD 系统以及采用 NetBSD 核心的 Debian GNU/NetBSD 系统甚至还有利用 Debian 的系统架构和工具采用 OpenSolaris 核心构建而成的 Nexenta OS 系统在这些 Debian 系统中以采用 Linux 核心的 Debian GNU/Linux 最为著名
@ -63,9 +63,9 @@ tutum/ubuntu Ubuntu image with SSH access. For the root.
根据搜索出来的结果读者可以自行选择下载镜像并使用 根据搜索出来的结果读者可以自行选择下载镜像并使用
下面以 ubuntu 18.04 为例演示如何使用该镜像安装一些常用软件 下面以 `ubuntu:18.04` 为例演示如何使用该镜像安装一些常用软件
首先使用 `-ti` 参数启动容器登录 bash查看 ubuntu 的发行版本号 首先使用 `-ti` 参数启动容器登录 `bash`查看 `ubuntu` 的发行版本号
```bash ```bash
$ docker run -ti ubuntu:18.04 /bin/bash $ docker run -ti ubuntu:18.04 /bin/bash
@ -94,7 +94,7 @@ Reading state information... Done
E: Unable to locate package curl E: Unable to locate package curl
``` ```
这并非系统不支持 `apt-get` 命令Docker 镜像在制作时为了精简清除了 apt 仓库信息因此需要先执行 `apt-get update` 命令来更新仓库信息更新信息后即可成功通过 apt-get 命令来安装软件 这并非系统不支持 `apt-get` 命令Docker 镜像在制作时为了精简清除了 `apt` 仓库信息因此需要先执行 `apt-get update` 命令来更新仓库信息更新信息后即可成功通过 `apt-get` 命令来安装软件
```bash ```bash
root@7d93de07bf76:/# apt-get update root@7d93de07bf76:/# apt-get update

View File

@ -6,6 +6,6 @@
读者可以根据具体情况来选择一般来说 读者可以根据具体情况来选择一般来说
* 官方镜像体积都比较小只带有一些基本的组件 精简的系统有利于安全稳定和高效的运行也适合进行定制 * 官方镜像体积都比较小只带有一些基本的组件 精简的系统有利于安全稳定和高效的运行也适合进行个性化定制
* 出于安全考虑几乎所有官方制作的镜像都没有安装 SSH 服务无法通过用户名和密码直接登录到容器中 * 出于安全考虑几乎所有官方制作的镜像都没有安装 SSH 服务无法通过用户名和密码直接登录到容器中