2019-11-05 23:35:43 +08:00
# Debian / Ubuntu
2019-09-20 15:29:02 +08:00
` Debian ` 和 ` Ubuntu ` 都 是 目 前 较 为 流 行 的 * * Debian 系 * * 的 服 务 器 操 作 系 统 , 十 分 适 合 研 发 场 景 。 ` Docker Hub ` 上 提 供 了 官 方 镜 像 , 国 内 各 大 容 器 云 服 务 也 基 本 都 提 供 了 相 应 的 支 持 。
2017-05-24 11:22:23 +08:00
2019-11-05 23:35:43 +08:00
# # Debian 系 统 简 介
2017-05-24 11:22:23 +08:00
! [ Debian 操 作 系 统 ] ( _images / debian - logo . png )
2019-09-20 15:29:02 +08:00
` Debian ` 是 由 ` GPL ` 和 其 他 自 由 软 件 许 可 协 议 授 权 的 自 由 软 件 组 成 的 操 作 系 统 , 由 * * Debian 计 划 ( Debian Project ) * * 组 织 维 护 。 * * Debian 计 划 * * 是 一 个 独 立 的 、 分 散 的 组 织 , 由 ` 3000 ` 人 志 愿 者 组 成 , 接 受 世 界 多 个 非 盈 利 组 织 的 资 金 支 持 , ` Software in the Public Interest ` 提 供 支 持 并 持 有 商 标 作 为 保 护 机 构 。 ` Debian ` 以 其 坚 守 ` Unix ` 和 自 由 软 件 的 精 神 , 以 及 其 给 予 用 户 的 众 多 选 择 而 闻 名 。 现 时 ` Debian ` 包 括 了 超 过 ` 25,000 ` 个 软 件 包 并 支 持 ` 12 ` 个 计 算 机 系 统 结 构 。
2017-05-24 11:22:23 +08:00
2019-09-20 15:29:02 +08:00
` 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 ` 最 为 著 名 。
2017-05-24 11:22:23 +08:00
2019-09-20 15:29:02 +08:00
众 多 的 ` Linux ` 发 行 版 , 例 如 ` Ubuntu ` 、 ` Knoppix ` 和 ` Linspire ` 及 ` Xandros ` 等 , 都 基 于 ` Debian GNU/Linux ` 。
2017-05-24 11:22:23 +08:00
2019-11-05 23:35:43 +08:00
# # # 使 用 Debian 官 方 镜 像
2017-05-24 11:22:23 +08:00
2019-09-20 15:29:02 +08:00
读 者 可 以 使 用 ` docker search ` 查 找 ` Debian ` 镜 像 :
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
$ docker search debian
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
debian Debian is ... 1565 [ OK ]
neurodebian NeuroDebian ... 26 [ OK ]
armbuild / debian port of debian 8 [ OK ]
...
` ` `
2019-09-20 15:29:02 +08:00
官 方 提 供 了 大 家 熟 知 的 ` debian ` 镜 像 以 及 面 向 科 研 领 域 的 ` neurodebian ` 镜 像 。
2017-05-24 11:22:23 +08:00
2019-09-20 15:29:02 +08:00
可 以 使 用 ` docker run ` 直 接 运 行 ` Debian ` 镜 像 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
$ docker run - it debian bash
root @ 668e178 d8d69 : / # cat / etc / issue
Debian GNU / Linux 8
` ` `
2019-09-20 15:29:02 +08:00
` Debian ` 镜 像 很 适 合 作 为 基 础 镜 像 , 构 建 自 定 义 镜 像 。
2017-05-24 11:22:23 +08:00
2019-11-05 23:35:43 +08:00
# # Ubuntu 系 统 简 介
2017-05-24 11:22:23 +08:00
! [ Ubuntu 操 作 系 统 ] ( _images / ubuntu - logo . jpg )
2019-09-20 15:29:02 +08:00
` Ubuntu ` 是 一 个 以 桌 面 应 用 为 主 的 ` GNU/Linux ` 操 作 系 统 , 其 名 称 来 自 非 洲 南 部 祖 鲁 语 或 豪 萨 语 的 “ ubuntu ” 一 词 ( 官 方 译 名 “ 友 帮 拓 ” , 另 有 “ 吾 帮 托 ” 、 “ 乌 班 图 ” 、 “ 有 奔 头 ” 或 “ 乌 斑 兔 ” 等 译 名 ) 。 ` Ubuntu ` 意 思 是 “ 人 性 ” 以 及 “ 我 的 存 在 是 因 为 大 家 的 存 在 ” , 是 非 洲 传 统 的 一 种 价 值 观 , 类 似 华 人 社 会 的 “ 仁 爱 ” 思 想 。 ` Ubuntu ` 基 于 ` Debian ` 发 行 版 和 ` GNOME/Unity ` 桌 面 环 境 , 与 ` Debian ` 的 不 同 在 于 它 每 6 个 月 会 发 布 一 个 新 版 本 , 每 2 年 推 出 一 个 长 期 支 持 * * ( Long Term Support , LTS ) * * 版 本 , 一 般 支 持 3 年 时 间 。
2017-05-24 11:22:23 +08:00
2019-11-05 23:35:43 +08:00
# # # 使 用 Ubuntu 官 方 镜 像
2017-05-24 11:22:23 +08:00
2019-09-20 15:29:02 +08:00
` Ubuntu ` 相 关 的 镜 像 有 很 多 , 这 里 使 用 ` --filter=stars=10 ` 参 数 , 只 搜 索 那 些 被 收 藏 ` 10 ` 次 以 上 的 镜 像 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2018-04-08 21:00:11 +08:00
$ docker search -- filter = stars = 10 ubuntu
2017-05-24 11:22:23 +08:00
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
ubuntu Official Ubuntu base image 840 [ OK ]
dockerfile / ubuntu Trusted automated Ubuntu ( http : //www.ubunt... 30 [OK]
crashsystems / gitlab - docker A trusted , regularly updated build of GitL ... 20 [ OK ]
sylvainlasnier / memcached This is a Memcached 1.4 .14 docker images b ... 16 [ OK ]
ubuntu - upstart Upstart is an event - based replacement for ... 16 [ OK ]
mbentley / ubuntu - django - uwsgi - nginx 16 [ OK ]
clue / ttrss The Tiny Tiny RSS feed reader allows you t ... 14 [ OK ]
dockerfile / ubuntu - desktop Trusted automated Ubuntu Desktop ( LXDE ) ( h ... 14 [ OK ]
tutum / ubuntu Ubuntu image with SSH access . For the root ... 12 [ OK ]
` ` `
根 据 搜 索 出 来 的 结 果 , 读 者 可 以 自 行 选 择 下 载 镜 像 并 使 用 。
2019-09-20 14:28:50 +08:00
下 面 以 ` ubuntu:18.04 ` 为 例 , 演 示 如 何 使 用 该 镜 像 安 装 一 些 常 用 软 件 。
2017-05-24 11:22:23 +08:00
2019-09-20 14:28:50 +08:00
首 先 使 用 ` -ti ` 参 数 启 动 容 器 , 登 录 ` bash ` , 查 看 ` ubuntu ` 的 发 行 版 本 号 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2018-12-19 17:24:52 +08:00
$ docker run - ti ubuntu : 18.04 / bin / bash
root @ 7 d93de07bf76 : / # cat / etc / os - release
NAME = "Ubuntu"
VERSION = "18.04.1 LTS (Bionic Beaver)"
ID = ubuntu
ID_LIKE = debian
PRETTY_NAME = "Ubuntu 18.04.1 LTS"
VERSION_ID = "18.04"
HOME_URL = "https://www.ubuntu.com/"
SUPPORT_URL = "https://help.ubuntu.com/"
BUG_REPORT_URL = "https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL = "https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME = bionic
UBUNTU_CODENAME = bionic
2017-05-24 11:22:23 +08:00
` ` `
当 试 图 直 接 使 用 ` apt-get ` 安 装 一 个 软 件 的 时 候 , 会 提 示 ` E: Unable to locate package ` 。
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
root @ 7 d93de07bf76 : / # apt - get install curl
Reading package lists ... Done
Building dependency tree
Reading state information ... Done
E : Unable to locate package curl
` ` `
2019-09-20 14:28:50 +08:00
这 并 非 系 统 不 支 持 ` apt-get ` 命 令 。 Docker 镜 像 在 制 作 时 为 了 精 简 清 除 了 ` apt ` 仓 库 信 息 , 因 此 需 要 先 执 行 ` apt-get update ` 命 令 来 更 新 仓 库 信 息 。 更 新 信 息 后 即 可 成 功 通 过 ` apt-get ` 命 令 来 安 装 软 件 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
root @ 7 d93de07bf76 : / # apt - get update
Ign http : //archive.ubuntu.com trusty InRelease
Ign http : //archive.ubuntu.com trusty-updates InRelease
Ign http : //archive.ubuntu.com trusty-security InRelease
Ign http : //archive.ubuntu.com trusty-proposed InRelease
Get : 1 http : //archive.ubuntu.com trusty Release.gpg [933 B]
...
` ` `
2019-09-20 15:29:02 +08:00
首 先 , 安 装 ` curl ` 工 具 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
root @ 7 d93de07bf76 : / # apt - get install curl
Reading package lists ... Done
Building dependency tree
Reading state information ... Done
The following extra packages will be installed :
ca - certificates krb5 - locales libasn1 - 8 - heimdal libcurl3 libgssapi - krb5 - 2
libgssapi3 - heimdal libhcrypto4 - heimdal libheimbase1 - heimdal
libheimntlm0 - heimdal libhx509 - 5 - heimdal libidn11 libk5crypto3 libkeyutils1
libkrb5 - 26 - heimdal libkrb5 - 3 libkrb5support0 libldap - 2.4 - 2
libroken18 - heimdal librtmp0 libsasl2 - 2 libsasl2 - modules libsasl2 - modules - db
libwind0 - heimdal openssl
...
root @ 7 d93de07bf76 : / # curl
curl : try ' curl -- help ' or ' curl -- manual ' for more information
` ` `
2019-09-20 15:29:02 +08:00
接 下 来 , 再 安 装 ` apache ` 服 务 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
root @ 7 d93de07bf76 : / # apt - get install - y apache2
Reading package lists ... Done
Building dependency tree
Reading state information ... Done
The following extra packages will be installed :
apache2 - bin apache2 - data libapr1 libaprutil1 libaprutil1 - dbd - sqlite3
libaprutil1 - ldap libxml2 sgml - base ssl - cert xml - core
...
` ` `
2019-09-20 15:29:02 +08:00
启 动 这 个 ` apache ` 服 务 , 然 后 使 用 ` curl ` 来 测 试 本 地 访 问 。
2017-05-24 11:22:23 +08:00
2017-11-22 11:13:23 +08:00
` ` ` bash
2017-05-24 11:22:23 +08:00
root @ 7 d93de07bf76 : / # service apache2 start
* Starting web server apache2 AH00558 : apache2 : Could not reliably determine the server ' s fully qualified domain name , using 172.17 .0 .2 . Set the ' ServerName ' directive globally to suppress this message
*
root @ 7 d93de07bf76 : / # curl 127.0 .0 .1
< ! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< html xmlns = "http://www.w3.org/1999/xhtml" >
< ! --
Modified from the Debian original for Ubuntu
Last updated : 2014 - 03 - 19
See : https : //launchpad.net/bugs/1288690
-- >
< head >
< meta http - equiv = "Content-Type" content = "text/html; charset=UTF-8" / >
< title > Apache2 Ubuntu Default Page : It works < / title >
< style type = "text/css" media = "screen" >
...
` ` `
配 合 使 用 ` -p ` 参 数 对 外 映 射 服 务 端 口 , 可 以 允 许 容 器 外 来 访 问 该 服 务 。
2019-11-05 23:35:43 +08:00
# # 相 关 资 源
2017-05-24 11:22:23 +08:00
2017-12-01 17:32:53 +08:00
* ` Debian ` 官 网 : https : //www.debian.org/
* ` Neuro Debian ` 官 网 : http : //neuro.debian.net/
* ` Debian ` 官 方 仓 库 : https : //github.com/Debian
* ` Debian ` 官 方 镜 像 : https : //hub.docker.com/_/debian/
* ` Debian ` 官 方 镜 像 仓 库 : https : //github.com/tianon/docker-brew-debian/
* ` Ubuntu ` 官 网 : http : //www.ubuntu.org.cn/global
* ` Ubuntu ` 官 方 仓 库 : https : //github.com/ubuntu
* ` Ubuntu ` 官 方 镜 像 : https : //hub.docker.com/_/ubuntu/
* ` Ubuntu ` 官 方 镜 像 仓 库 : https : //github.com/tianon/docker-brew-ubuntu-core