Compare commits

...

194 Commits

Author SHA1 Message Date
Baohua Yang 99433b2e45
Merge pull request #540 from RockChinQ/master
Add error solution for docker installation on raspi OS
2024-02-03 19:46:31 -08:00
RockChinQ 32c6a91aa9 doc(raspberry-pi): tested on bookworm 2024-02-02 23:03:39 +08:00
RockChinQ bea7b8d3f4 doc(raspberry-pi.md): error solution for bullseye 2024-02-02 10:36:14 +08:00
Baohua Yang 1be1db5a43
Merge pull request #538 from CybCom/master
Fix CI error
Close issue #537
2023-12-29 16:27:59 -08:00
CybCom 7052cea8a3
refactor(workflows): 💚 Update the YAMLs for GitHub workflows
Update the out dated action version. Remove redundant/useless lines. Some other updates.
2023-12-23 01:01:32 +08:00
CybCom 584087ad46
ci(workflows): 💚 Try to confirm and fix CI error:0308010C
There might be a conflict between the new version node.js and this project's dependencies, according to CI Error message "error:0308010C:digital envelope routines::unsupported". Try to confirm and fix it by specifying the old styled openssl.
2023-12-22 18:27:38 +08:00
Baohua Yang dd6b022429
Merge pull request #536 from CybCom/master
Fix expression of using init
2023-12-20 14:43:33 -08:00
CybCom 46020ff786
fix(image\dockerfile\cmd.md): 🐛 Fix issue yeasy#535, 改进对issue进程的提法
fix(image): CMD指令讲解中,”则是希望 upstart 来以后台守护进程形式启动 nginx 服务“,鉴于当前多种init程序(特别是以systemd为代表的)的流行,改为  ”则是希望 init 系统以后台守护进程的形式启动 nginx 服务“

Issue #535: 关于init进程的提法改进
2023-12-21 01:06:07 +08:00
Baohua Yang 3ccba8afb4
Merge pull request #533 from lxg199788/patch-1
Update aliyun mirror configuration
2023-10-25 14:40:38 -07:00
lxg f5e6a67664
Update aliyun mirror configuration.md
Update aliyun mirror configuration to the lastest version
2023-10-23 09:56:14 +08:00
Baohua Yang 439264a87f
Merge pull request #530 from hellozrh/dev1
Fix rpm installation
2023-08-17 21:55:29 -07:00
hellozrh 41558e73b4
修复离线rpm包安装方式,解决各个rpm包先后依赖安装顺序不一致导致安装失败的问题。
修复离线rpm包安装方式,解决各个rpm包先后依赖安装顺序不一致导致安装失败的问题。
2023-08-17 16:15:16 +08:00
Baohua Yang f34a985a78
Merge pull request #529 from hellozrh/hellozrh-patch
Fix installation steps when offline
2023-08-01 17:49:18 -07:00
hellozrh bd8387083a
Update to newer version of docker installation. 2023-07-29 16:32:28 +08:00
hellozrh 8d129d0ead
修复离线安装时依赖包下载、离线rpm包安装依赖先后顺序的问题。 2023-07-19 15:20:16 +08:00
Baohua Yang 85c5a280a4
Merge pull request #527 from hezhizhen/patch-2
Update install
2023-07-03 17:21:20 -07:00
Zhizhen He 98044d04b2
Update install 2023-07-03 10:54:23 +08:00
Kang Huaishuai 57873b1143
Merge pull request #523 from wushu037/patch-1
Update volume.md
2023-05-15 08:58:42 +08:00
无数 6acf209b9a
Update volume.md
Correct confusing words
2023-05-07 21:34:34 +08:00
Kang Huaishuai ed4b3efd3b
Merge pull request #520 from ReginaldChen/patch-1
修改错别字
2023-02-27 08:10:33 +08:00
ReginaldChen eb327bf908
修改错别字
轮寻应为轮询
2023-02-24 17:41:22 +08:00
Baohua Yang cc683fdb56
Merge pull request #519 from docete/issue-518
Add docs of using HTTP/HTTPS proxy

Close #518
2023-01-17 12:03:57 -08:00
Gao Zhenghua 13b8e12f44 [issue-518] Add document on how to use HTTP/HTTPS proxy 2023-01-16 16:13:20 +08:00
Kang Huaishuai ce4428adfb
Merge pull request #517 from hezhizhen/patch-1
fix: typo
2023-01-08 20:04:47 +08:00
Zhizhen He 6443ddc07c
fix: typo 2023-01-07 23:45:41 +08:00
Kang Huaishuai ce5ae6a360
Merge pull request #515 from kingyue737/patch-1
fix: typo
2022-12-22 15:39:38 +08:00
Kang Huaishuai 35b264694b
Merge pull request #516 from kingyue737/patch-2
fix: wrong key of registry mirrors
2022-12-22 15:39:14 +08:00
Yue JIN e76b0b66a0
fix: wrong key of registry mirrors 2022-12-21 20:32:46 +08:00
Yue JIN d80f3430b2
fix: typo 2022-12-21 19:38:21 +08:00
Baohua Yang d9c5d2fb43
Merge pull request #514 from Hazel-Lin/install/mac
Update macos requirement in doc
2022-11-11 18:15:38 -08:00
linhuizi fe7530c3f6 docs(install): 修改Mac安装系统要求 2022-11-11 11:31:02 +08:00
Baohua Yang 30f00323e0
Merge pull request #512 from WitchElaina/master
fix words
2022-10-22 11:29:13 -07:00
WitchElaina 93ea51ff07
修改语病
原句:“这也是为什么有人认为 Go 是特别适合容器微服务架构的语言的原因之一”中的“为什么”和“的原因”重复赘余,因此删除掉“为什么”确保本句语法正确。
2022-10-22 15:42:59 +08:00
Baohua Yang 85be3008fa
Update words
Fix #501
2022-05-12 14:37:08 -07:00
Baohua Yang 88f9183fd5
Merge pull request #500 from mrnyg/patch-1
Enable non-root read mod
2022-04-11 10:06:43 -07:00
mrnyg 1c4a43e34e
Update secret.md
apache工作进程是www-data用户运行,而密钥文件(/run/secrets/wp_db_password)的属主是root,导致apache工作进程无法读取密钥,从而无法连接数据库
2022-04-09 14:27:53 +08:00
Baohua Yang 7014e4d87c
Create FUNDING.yml 2022-03-16 15:14:06 -07:00
Kang Huaishuai 18028b8eaa
Update dockerhub autobuild
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2022-02-24 21:08:22 +08:00
Kang Huaishuai 7c78d1c256
centos refer to centos:8, deprecated
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2022-02-24 21:06:15 +08:00
Baohua Yang d4c6e590c6
Merge pull request #497 from npmmirror/master
Update https://registry.npm.taobao.org to https://registry.npmmirror.com
2022-02-16 11:50:56 -08:00
NPM Mirror Bot 1e415ac76c update https://registry.npm.taobao.org to https://registry.npmmirror.com 2022-02-11 22:09:47 -05:00
NPM Mirror Bot 664ac88c85 update https://registry.npm.taobao.org to https://registry.npmmirror.com 2022-02-11 13:56:55 +00:00
Kang Huaishuai 734079661d
Merge pull request #496 from smartlixx/patch-1
Update best_practices.md
2022-01-04 11:01:18 +08:00
Xianxiang Li 1ed8c2c81f
Update best_practices.md
Fix a typo
2022-01-04 10:41:51 +08:00
Baohua Yang b9455b2169 Fix format 2021-12-01 14:58:32 -08:00
Baohua Yang 10a77adbe6
Merge pull request #495 from Dup4/master
Remove duplicated words
2021-11-07 16:37:20 -08:00
Dup4 31f3540fbc
fix: typo 2021-11-01 19:27:25 +08:00
Kang Huaishuai d5ce7f048b
Update DD download link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-09-19 18:28:22 +08:00
Kang Huaishuai a613c78c33
[Drone] update to v2
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-09-19 17:58:20 +08:00
Kang Huaishuai d1d4f0f47d
Update link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-16 12:46:38 +08:00
Kang Huaishuai d4fc0a9da1
remove deprecated features: machine and swarm
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-16 12:43:50 +08:00
Kang Huaishuai 8dfdbc5b07
remove docker search
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-16 12:33:01 +08:00
Kang Huaishuai 5caddf4413
[Kubernetes] kubeadm cri based containerd
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-16 12:25:33 +08:00
Kang Huaishuai 95aed0099e
Update minio case
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-15 13:29:08 +08:00
Kang Huaishuai 533f30a939
Update dead url
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-06 23:21:53 +08:00
Kang Huaishuai 1787c392c6
Update os version requirement
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-06 23:12:55 +08:00
Kang Huaishuai ca29ab51b1
Update SUMMARY.md
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-07-05 00:35:13 +08:00
Kang Huaishuai 64b75e997f
Update project compose file
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-06-27 22:34:53 +08:00
Kang Huaishuai 31ea892dfc
Update aliyun mirror
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-06-27 18:03:05 +08:00
Kang Huaishuai 985e295d70
Add compose v2
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-06-12 23:26:44 +08:00
Kang Huaishuai 330beb4fdb
don't push pages to coding.net
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-06-06 20:19:28 +08:00
Kang Huaishuai baeb222455
Update vuepress config
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-06-06 11:10:01 +08:00
Kang Huaishuai 8705cede17
Update jd.com link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-05-31 19:42:07 +08:00
Kang Huaishuai ba36c90b6c
Update vuepress config
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-05-31 19:23:39 +08:00
Kang Huaishuai 96fc5acc75
Update laravel demo
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-05-28 21:50:15 +08:00
Kang Huaishuai 6cfc12eece
cli experimental is deprecated on 20.10
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-04-18 19:11:47 +08:00
Kang Huaishuai da614e8441
Update link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-20 11:22:13 +08:00
Kang Huaishuai 1e577a8c6f
Update hello-world example
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-14 21:42:50 +08:00
Kang Huaishuai 9fe6c356f0
Remove us-en url
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-12 00:15:47 +08:00
Kang Huaishuai aa08e32003
Update repository
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-12 00:12:47 +08:00
Kang Huaishuai bc43b30964
Update image 2021-03-11 23:09:37 +08:00
Kang Huaishuai 7afb8991d3
Update install
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-11 21:27:50 +08:00
Kang Huaishuai 6f810c89f3
Update cmd result
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-07 23:56:19 +08:00
Kang Huaishuai 0a87d2a643
Update container markdown format
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-07 23:54:43 +08:00
Kang Huaishuai 8dd3141c57
Update format
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-07 23:51:02 +08:00
Kang Huaishuai ce48a157d5
Update registry
* remove dtr
* add ghcr.io

Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-07 22:36:48 +08:00
Kang Huaishuai ea00e0d82a
Update format
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-07 15:29:05 +08:00
Kang Huaishuai 5ebd6fb6f8
Update brew command, fixed #484
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-06 11:02:43 +08:00
Kang Huaishuai 6265d0274b
[vuepress] Update version
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2021-03-06 11:02:42 +08:00
Kang Huaishuai d1480092bf
Merge pull request #482 from GFZRZK/patch-1
fix wrong cmd
2021-01-19 23:47:07 +08:00
WC d414505835
fix wrong cmd
fix wrong cmd
2021-01-11 18:14:38 +08:00
Kang Huaishuai aa3d56fce9
remove travis ci
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-20 23:22:30 +08:00
Kang Huaishuai 2cd0fac44b
remove mesos
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-20 22:58:09 +08:00
Kang Huaishuai fb162df033
remove project travis ci
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-20 22:48:54 +08:00
Kang Huaishuai cc726421c8
Update compose version
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-20 22:18:08 +08:00
Kang Huaishuai 47e83e7aa3
docker v20.10.0 released
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-20 22:10:25 +08:00
Kang Huaishuai da10b3a7a1
remove docker desktop edge channel
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-11 22:00:57 +08:00
Kang Huaishuai 9d62668fcf
close #479
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-12-09 23:49:26 +08:00
Kang Huaishuai da09321b0e
close #478
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-21 20:43:00 +08:00
Kang Huaishuai 2b7f954c65
[install] use aliyun mirror
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-09 17:38:22 +08:00
Kang Huaishuai 7b5a21bf6d
[install] Update debian
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-03 15:42:09 +08:00
Kang Huaishuai e8d45d3be9
[install] Update outdated content
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-03 13:04:28 +08:00
Kang Huaishuai 7d51bacb12
[compose] Remove outdated content
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-02 18:57:51 +08:00
Kang Huaishuai 00274b0615
Update Dockerfile USER,close #473
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-02 17:46:43 +08:00
Kang Huaishuai 0b1812aac8
Update fcos
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-11-02 10:33:27 +08:00
Kang Huaishuai 17ad494537
remove outdated content
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-22 08:46:09 +08:00
Kang Huaishuai 8e8126756a
[vuepress] Fixed https://github.com/Mister-Hope/vuepress-theme-hope/issues/406 2020-10-16 12:13:14 +08:00
Kang Huaishuai f9182e5d19
[vuepress] bump 1.7.0
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-15 18:30:34 +08:00
Kang Huaishuai 0fdc2d64a9
based Docker v20.10
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-14 23:33:32 +08:00
Kang Huaishuai bcc901ac9f
[install] Docker 20.10 beta support CentOS 8
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-14 23:30:27 +08:00
Kang Huaishuai 47ec0e2ab8
[vuepress] bump 1.6.0
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-14 13:47:42 +08:00
Kang Huaishuai c572a399f3
[vuepress] Update config
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-14 11:52:48 +08:00
Kang Huaishuai fd85d5a0e5
project docker image add bash
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-14 00:40:07 +08:00
Kang Huaishuai 1b2c480a55
Add vscode devcontainer
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-14 00:28:50 +08:00
Kang Huaishuai fc8b8867af
[vuepress] Update config
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-13 22:41:28 +08:00
Kang Huaishuai ff1f48a793
Update mirror: check docker.service first
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-13 09:35:40 +08:00
Kang Huaishuai 4751e59a6f
rename docker ce to docker
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-12 18:54:47 +08:00
Kang Huaishuai f6ec3b23d2
Update mirror
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-10 09:35:45 +08:00
Kang Huaishuai 1c932ef567
Fixed link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-10-07 13:44:57 +08:00
Kang Huaishuai 68d85ac31e
Update laravel, close #465 2020-10-07 13:31:45 +08:00
Kang Huaishuai 83929dd096
[vuepress] support dark mode, close #463
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-16 18:05:52 +08:00
Kang Huaishuai d071ed7b99
Fixed 404 link 2020-09-16 17:40:22 +08:00
Kang Huaishuai 58c09788f6
Add link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 21:04:01 +08:00
Kang Huaishuai cbaa24c48f
Dockerfile add shell label
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 20:16:04 +08:00
Kang Huaishuai 5d91c5a39f
replace ip.cn
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 17:43:21 +08:00
Kang Huaishuai 48785525e0
Fixed kubeadm error
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 14:18:12 +08:00
Kang Huaishuai 6fcf302809
Update format
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 10:14:38 +08:00
Kang Huaishuai 4f08e73bfe
[install] Update CentOS8
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 10:06:15 +08:00
Kang Huaishuai 4f7b448f0c
[install] remove nightly version
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 09:51:53 +08:00
Kang Huaishuai c1c7a7981d
Fixed 301 link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 09:40:55 +08:00
Kang Huaishuai cc210f75a7
[install] Update CentOS8
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 09:30:17 +08:00
Kang Huaishuai b0ccb74dbd
[install] Add CentOS 8
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-09-06 09:15:03 +08:00
Kang Huaishuai 90a7316322
buildkit more arg 2020-09-06 08:53:11 +08:00
Kang Huaishuai 6ceeec7f45
Merge pull request #462 from jackeylu/master
fix #461 https://github.com/yeasy/docker_practice/issues/461#issue-69
2020-09-04 14:34:16 +08:00
jackeylv d1e303d139 fix #461 https://github.com/yeasy/docker_practice/issues/461#issue-692771052
Signed-off-by: jackeylv <lvlin.whu@qq.com>
2020-09-04 14:24:36 +08:00
Kang Huaishuai 4b70a27151
link-check exclude ip.cn
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-29 15:46:24 +08:00
Kang Huaishuai e021b27323
registry image not include htpasswd
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-29 15:30:32 +08:00
Kang Huaishuai eac2a57633
Update vuepress nav
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-27 23:09:11 +08:00
Kang Huaishuai c25c7283cf
remove opensource
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-25 19:42:35 +08:00
Kang Huaishuai 4682ba336f
improve content
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-25 18:01:53 +08:00
Kang Huaishuai ee26243625
use nginx:alpine as demo
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-25 16:54:59 +08:00
Kang Huaishuai 5fb17c90e0
Merge pull request #460 from myccccccc/master
Fix issue #459
2020-08-25 15:53:33 +08:00
mayingchun 6eb603a33b Fix issue #459 2020-08-25 14:19:23 +08:00
Kang Huaishuai 9bc245dfdc
[Windows] v1903+ support WSL2
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-22 09:38:34 +08:00
Kang Huaishuai 9a4660492c
ip.cn not support https
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-10 13:43:33 +08:00
Kang Huaishuai edf1a3a07b
remove outdated content #458
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-10 13:41:36 +08:00
Kang Huaishuai acb8662c43
wechat is first
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-08-10 13:40:04 +08:00
Kang Huaishuai 85b2325513
Update link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-31 10:08:01 +08:00
Kang Huaishuai cf7d53dc9c
Merge pull request #456 from huiyifyj/master
Add "到" the word to read more fluently
2020-07-30 10:04:07 +08:00
huiyifyj 83fbb87fd1
Add the word to read more fluently 2020-07-30 09:26:49 +08:00
Kang Huaishuai 61bda4b259
Fixed docker image
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-14 16:58:22 +08:00
Kang Huaishuai c815720349
Update image link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-14 16:20:36 +08:00
Kang Huaishuai 4aa20ecce3
Update actions 301 link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-14 00:09:11 +08:00
Kang Huaishuai 6efe0297fe
Remove download link #455
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-14 00:08:15 +08:00
Kang Huaishuai 6c668a94df
Update README
调整章节顺序

Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-04 13:02:37 +08:00
Kang Huaishuai 911ce1a2e4
Fixed #454
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-07-03 12:19:36 +08:00
Kang Huaishuai 8b186fb7e7
[windows] install by winget
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-06-22 09:22:53 +08:00
Kang Huaishuai 139b0ca65c
Update raspberry os name
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-06-17 18:50:33 +08:00
Kang Huaishuai 67213bc2f5
Update ide content
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-06-17 10:00:47 +08:00
Kang Huaishuai d4d09f5154
docker hub support buildx
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-06-17 00:42:01 +08:00
Kang Huaishuai f0568ebffd
Update install content
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-06-17 00:10:09 +08:00
Kang Huaishuai ddec6641b9
Merge pull request #451 from staticdax/master
Fix Typo issue #450: "运用"疑似笔误
2020-05-20 11:27:43 +08:00
staticdax 4d3d2d21fe fix typo: "运用"疑似笔误 2020-05-20 01:35:47 +08:00
Kang Huaishuai f580130be0
Add baidu registry mirror
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-05-11 19:01:06 +08:00
Kang Huaishuai acc5c6e723
Add link
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-05-10 10:43:51 +08:00
Kang Huaishuai 1316e41222
offline read image use cn mirror image
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-05-10 09:46:27 +08:00
Kang Huaishuai 9cfd1fda2b
offline read docker image add tips
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-05-10 09:46:27 +08:00
Kang Huaishuai 683cf95ca7
build vuepress docker image
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-05-10 09:46:11 +08:00
Kang Huaishuai 8952dee0a8
Merge pull request #448 from niebayes/master
Fix issue #447: 删除了一个多余的"对" (line 97)
2020-05-08 19:44:52 +08:00
Nie Shicong bdc8bd618c Fix issue #447: 删除了一个多余的"对" (line 97)
Signed-off-by: Nie Shicong <bayes@Nies-MacBook-Pro.local>
2020-05-08 19:20:23 +08:00
Baohua Yang 41da49b127 Migrating to new gitbook link 2020-04-29 11:36:50 -07:00
Kang Huaishuai 18ab3069a3
Update soft to latest version
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-04-26 10:34:02 +08:00
Kang Huaishuai 0fd981acc2
[buildx] buildkit image support tencent cloud env
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-04-26 10:17:19 +08:00
Kang Huaishuai 4561243c23
FCOS live iso require 3GB RAM
Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>
2020-04-26 09:57:39 +08:00
Kang Huaishuai ff28d7219d
Recommit (#446)
* 添加离线部署docker和离线部署minio实践

Signed-off-by: Kang Huaishuai <khs1994@khs1994.com>

Co-authored-by: Daiwj <daiwj@zz3s.com>
2020-04-26 09:42:59 +08:00
Daiwj 34b6b617b9 docker镜像的导入和导出修改了章节名字 2020-04-12 19:13:38 +08:00
Kang HuaiShuai e0797515d3
Update buildx image
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-04-07 09:18:40 +08:00
Kang HuaiShuai a691aa607a
remove azk8s.cn mirror
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-04-04 22:54:32 +08:00
Kang Huaishuai e9dc8dc974
Merge pull request #443 from boblau8686/master
Correct the wrong word
2020-03-31 18:32:40 +08:00
bob.liu 44fdf58ba5 Correct the wrong word 2020-03-31 18:23:17 +08:00
Kang HuaiShuai bd74c85bb7
gitbook dist commit message include main repo sha
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-12 15:07:44 +08:00
Kang HuaiShuai e38ea82f37
remove github actions files on gitbook dist
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-12 15:04:21 +08:00
Kang HuaiShuai c887661c08
Add docker roadmap
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-12 14:50:34 +08:00
Kang HuaiShuai fced7854ee
Fixed #440 on fedora
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-12 14:47:09 +08:00
Touko e4a68ea7e4
Fix issue #440
http://mirrors.ustc.edu.cn/help/docker-ce.html#id7
2020-03-12 14:23:20 +08:00
Kang HuaiShuai d8e5cfe097
Update install
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-10 14:24:46 +08:00
Kang HuaiShuai 5634eb2fda
Update aliyun customer case
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-10 14:08:20 +08:00
Kang HuaiShuai c720d6959e
Docker Desktop Support Windows Home
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-10 13:39:27 +08:00
Kang HuaiShuai 3a24901664
Change AUFS to OverlayFS
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-03-04 11:50:59 +08:00
Kang HuaiShuai ca5502e208
Update alpine content: replace default repo
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-27 23:31:01 +08:00
Kang HuaiShuai d2f5e120ae
Fixed github pages
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-23 21:57:26 +08:00
Kang HuaiShuai d887c8bda6
Update link
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-23 21:17:32 +08:00
Kang HuaiShuai 1e026fb3a1
Remove 404 link
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-23 11:36:56 +08:00
Kang HuaiShuai 33c2b2216d
[actions] check md files link
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-23 11:15:11 +08:00
Kang HuaiShuai 6c0fc9e416
cp _images to vuepress dist
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-23 10:53:24 +08:00
Kang HuaiShuai a2e8595c42
vuepress remove archived content
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-22 14:59:31 +08:00
Kang HuaiShuai 5577c9caa6
Change CoreOS to Fedora CoreOS(FCOS)
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-02-22 13:55:13 +08:00
Kang Huaishuai 2f46c5180c
Merge pull request #439 from firejq/patch-1
Fix a markdown grammatical error
2020-02-11 08:57:29 +08:00
FirejqWei 9a0a76a5bb
Fix a markdown grammatical error 2020-02-11 02:03:57 +08:00
Kang HuaiShuai 9d450ffc26
[Compose] Add lnmp
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-01-09 17:08:35 +08:00
Kang HuaiShuai e77c9ecbab
[Kubernetes] Add dashboard
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2020-01-09 16:57:38 +08:00
Kang HuaiShuai 386b1e4cf6
Replace dead link
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2019-12-31 21:10:06 +08:00
Kang HuaiShuai 9f0b2c725f
Add podman
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2019-12-31 20:53:51 +08:00
Kang HuaiShuai 0dcc67da1c
Add kubeadm, close #438
Signed-off-by: Kang HuaiShuai <khs1994@khs1994.com>
2019-12-31 20:26:22 +08:00
180 changed files with 2666 additions and 2417 deletions

View File

@ -0,0 +1,22 @@
// https://code.visualstudio.com/docs/remote/devcontainerjson-reference
{
"image": "yeasy/docker_practice:latest",
"mounts": [
"source=dp-code-remote-cache,target=/root/.vscode-server,type=volume"
],
"settings": {
"terminal.integrated.shell.linux": "/bin/sh"
},
"forwardPorts": [
4000
],
"runArgs": [
"--cap-add=SYS_ADMIN"
],
"postStartCommand": [
"sh",
"-cx",
"pwd ; cd /workspaces/docker_practice ; mkdir -p ${PWD}/node_modules; mkdir -p ${PWD}/_book; mount --bind /srv/gitbook/node_modules ${PWD}/node_modules ; mount --bind /mnt ${PWD}/_book"
]
}

11
.docker/docker-entrypoint.sh Executable file
View File

@ -0,0 +1,11 @@
#!/usr/bin/env sh
echo
echo
echo "Please open your browser: 127.0.0.1:4000"
echo
echo "欢迎加入 QQ 群:【 145983035 】 分享 Docker 资源,交流 Docker 技术"
echo
echo
exec nginx -g "daemon off;"

1
.github/CODEOWNERS vendored
View File

@ -28,7 +28,6 @@
/.editorconfig/ @khs1994
/.gitattributes @khs1994
/.gitignore @khs1994
/.travis.yml @khs1994
/_config.yml @yeasy @khs1994
/book.json @yeasy @khs1994
/CHANGELOG.md @yeasy @khs1994

13
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1,13 @@
# These are supported funding model platforms
github: yeasy
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']

View File

@ -21,11 +21,11 @@ about: Create a report to help us improve
* [x] Others (Pls describe below)
### Docker Version
<!-- Docker 19.03 Docker -->
<!--if Docker version under 19.03, please upgrade Docker to 19.03-->
<!-- Docker 20.10 Docker -->
<!--if Docker version under 20.10, please upgrade Docker to 20.10-->
* [x] Edge (v19.03)
* [x] Stable (v19.03)
* [x] Test (v20.10)
* [x] Stable (v20.10)
* [x] 1.13.0 or Before
### Problem Description

View File

@ -21,11 +21,11 @@ about: Create a issue about Docker
* [x] Others (Pls describe below)
### Docker Version
<!-- Docker 19.03 Docker -->
<!--if Docker version under 19.03, please upgrade Docker to 19.03-->
<!-- Docker 20.10 Docker -->
<!--if Docker version under 20.10, please upgrade Docker to 20.10-->
* [x] Edge (v19.03)
* [x] Stable (v19.03)
* [x] Test (v20.10)
* [x] Stable (v20.10)
* [x] 1.13.0 or Before
### Problem Description

View File

@ -3,7 +3,7 @@
See [CONTRIBUTING](CONTRIBUTING.md) for contribution guidelines.
-->
### Proposed changes (Mandatory)
**Proposed changes (Mandatory)**
<!--
Tell us what you did and why:
@ -13,7 +13,7 @@
And details in other paragraphs.
-->
### Fix issues (Optional)
**Fix issues (Optional)**
<!--
Tell us what issues you fixed, e.g., fix #123

65
.github/workflows/check-link.yml vendored Normal file
View File

@ -0,0 +1,65 @@
name: Check link
on:
workflow_dispatch:
jobs:
check-link:
name: check-link
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1
# search Issues :-(
- run: |
docker run -i --rm \
-v $PWD:/mnt:ro \
dkhamsing/awesome_bot \
--white-list "localhost","0.0.0.0",\
"server","example.com","docker",\
"docker.domain.com","YourIP","register",\
"172.16.238.100","172.16.238.101","172.16.238.102",\
"192.168.199.100",\
"github.com/settings",\
"github.com/docker/compose/releases/download",\
"github.com/etcd-io/etcd/releases/download",\
"github.com/tianon/gosu/releases/download",\
"github.com/yeasy/docker_practice",\
"github.com/AliyunContainerService/k8s-for-docker-desktop/raw",\
"dl-cdn.alpinelinux.org/alpine/edge/testing",\
"www.w3.org/1999/xhtml",\
"cr.console.aliyun.com",\
"cloud.tencent.com",\
"nodejs.org/dist/",\
"c.163.com/hub",\
"drone.yeasy.com",\
"docs.docker.com",\
"dockerhub.azk8s.cn",\
"reg-mirror.qiniu.com",\
"registry.docker-cn.com",\
"mirror.ccs.tencentyun.com",\
"vuepress.mirror.docker-practice.com",\
"mc.qcloudimg.com/static/img",\
"www.daocloud.io/mirror",\
"download.docker.com",\
"www.ubuntu.com",\
"archive.ubuntu.com",\
"security.ubuntu.com/ubuntu",\
"nginx.com",\
"img.shields.io/github/release/yeasy/docker_practice",\
"launchpad.net",\
"www.w3.org/1999",\
"chat.freenode.net",\
"en.wikipedia.org/wiki/UnionFS",\
"product.china-pub.com",\
"union-click.jd.com",\
"x.x.x.x/base",\
"x.x.x.x:9090",\
"yeasy.gitbooks.io",\
"download.fastgit.org",\
"www.aliyun.com" \
--allow-dupe \
--skip-save-results \
-t 10 \
`find . \( -path "./mesos" -o -path "./swarm_mode" \) -prune -o -name "*.md" -exec ls {} \;`
name: check-link
timeout-minutes: 25

View File

@ -1,28 +1,100 @@
name: CI
on:
push:
pull_request:
workflow_dispatch:
name: CI
defaults:
run:
shell: bash --noprofile --norc -exo pipefail {0}
jobs:
build:
name: Build GitBook
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
with:
fetch-depth: 2
- name: Build
- uses: actions/checkout@v4.1.1
- name: Build Gitbook
uses: docker://yeasy/docker_practice
with:
args: build
- name: Build Gitbook Docker Image
if: github.repository == 'docker-practice/docker_practice'
run: |
sudo chmod -R 777 _book
echo "FROM nginx:alpine" >> Dockerfile
echo "COPY _book /usr/share/nginx/html" >> Dockerfile
echo "COPY .docker/docker-entrypoint.sh /" >> Dockerfile
echo "ENTRYPOINT [\"/docker-entrypoint.sh\"]" >> Dockerfile
export VCS_REF=`git rev-parse --short HEAD`
docker build \
-t dockerpracticesig/docker_practice \
-t dockerpracticesig/docker_practice:gitbook \
--label org.opencontainers.image.revision=$VCS_REF \
--label org.opencontainers.image.source="https://github.com/yeasy/docker_practice" \
--label maintainer="https://github.com/docker-practice" \
.
docker run -d --rm -p 4000:80 dockerpracticesig/docker_practice
sleep 5
echo "::group::Test"
curl 127.0.0.1:4000
echo "::endgroup::"
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
docker push dockerpracticesig/docker_practice
docker push dockerpracticesig/docker_practice:gitbook
env:
DOCKER_PASSWORD: ${{secrets.DOCKER_PASSWORD}}
DOCKER_USERNAME: ${{secrets.DOCKER_USERNAME}}
- name: Upload Gitbook dist
uses: docker://pcit/pages
if: github.repository == 'docker-practice/docker_practice'
env:
PCIT_EMAIL: khs1994@khs1994.com
PCIT_GIT_TOKEN: ${{ secrets.PCIT_GIT_TOKEN }}
PCIT_GIT_URL: github.com/docker-practice/zh-cn
PCIT_KEEP_HISTORY: "true"
PCIT_LOCAL_DIR: _book
PCIT_MESSAGE: Build from yeasy/docker_practice@${{github.sha}}
PCIT_TARGET_BRANCH: master
PCIT_USERNAME: khs1994
- name: vuepress
run: |
export NODE_OPTIONS=--openssl-legacy-provider
sudo rm -rf _book
npm i vuepress --save-dev
npm i
git clone https://github.com/docker-practice/.vuepress .vuepress2
cp -r .vuepress2/. .vuepress/
rm -rf .vuepress2
find . \( -path "./mesos" -o -path "./swarm_mode" -o -path "./node_modules" -o -path "./.vuepress" -o -path "./_book" -o -path "./CHANGELOG.md" -o -path "./CONTRIBUTING.md" \) -prune -o -name "*.md" -exec sed -i 'N;2a\<AdSenseTitle/>\n' {} \;
npx vuepress --version
npm run vuepress:build
echo "vuepress.docker-practice.com" > .vuepress/dist/CNAME
echo "vuepress.mirror.docker-practice.com" > .vuepress/dist/CNAME
cp -r _images .vuepress/dist
cp -r advanced_network/_images .vuepress/dist/advanced_network
cp -r appendix/_images .vuepress/dist/appendix
cp -r cases/ci/drone/_images .vuepress/dist/cases/ci/drone
cp -r cases/os/_images .vuepress/dist/cases/os
cp -r cloud/_images .vuepress/dist/cloud
cp -r data_management/_images .vuepress/dist/data_management
cp -r etcd/_images .vuepress/dist/etcd
cp -r image/_images .vuepress/dist/image
cp -r install/_images .vuepress/dist/install
cp -r introduction/_images .vuepress/dist/introduction
cp -r kubernetes/_images .vuepress/dist/kubernetes
cp -r underly/_images .vuepress/dist/underly
echo "include: [_images]" > .vuepress/dist/_config.yml
- name: Upload Vuepress dist
uses: docker://pcit/pages
if: github.repository == 'docker-practice/docker_practice'
@ -30,23 +102,55 @@ jobs:
PCIT_EMAIL: khs1994@khs1994.com
PCIT_GIT_TOKEN: ${{ secrets.PCIT_GIT_TOKEN }}
PCIT_GIT_URL: github.com/docker-practice/vuepress
PCIT_KEEP_HISTORY: "1"
PCIT_KEEP_HISTORY: "true"
PCIT_LOCAL_DIR: .vuepress/dist
PCIT_MESSAGE: Sync from yeasy/docker_practice@${{github.sha}} by PCIT
PCIT_MESSAGE: Build from yeasy/docker_practice@${{github.sha}}
PCIT_TARGET_BRANCH: master
PCIT_USERNAME: khs1994
- name: Set coding.net CNAME
run: |
echo "vuepress.mirror.docker-practice.com" > .vuepress/dist/CNAME
- name: Upload Vuepress dist to coding.net
uses: docker://pcit/pages
# - name: Set coding.net CNAME
# run: |
# echo "vuepress.mirror.docker-practice.com" > .vuepress/dist/CNAME
# - name: Upload Vuepress dist to coding.net
# uses: docker://pcit/pages
# if: github.repository == 'docker-practice/docker_practice'
# env:
# PCIT_EMAIL: khs1994@khs1994.com
# PCIT_GIT_TOKEN: ${{ secrets.CODING_GIT_TOKEN }}
# PCIT_GIT_URL: e.coding.net/dpsigs/docker_practice
# PCIT_KEEP_HISTORY: "true"
# PCIT_LOCAL_DIR: .vuepress/dist
# PCIT_MESSAGE: Build from yeasy/docker_practice@${{github.sha}}
# PCIT_TARGET_BRANCH: master
# PCIT_USERNAME: ptt0xjqzbke3
- name: Build vuepress docker image
if: github.repository == 'docker-practice/docker_practice'
run: |
sudo rm -rf .vuepress/dist/.git
echo "FROM nginx:alpine" > Dockerfile
echo "COPY .vuepress/dist /usr/share/nginx/html" >> Dockerfile
echo "COPY .docker/docker-entrypoint.sh /" >> Dockerfile
echo "ENTRYPOINT [\"/docker-entrypoint.sh\"]" >> Dockerfile
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
VCS_REF=`git rev-parse --short HEAD`
docker build -t dockerpracticesig/docker_practice:vuepress \
--label org.opencontainers.image.revision=$VCS_REF \
--label org.opencontainers.image.source="https://github.com/yeasy/docker_practice" \
--label maintainer="https://github.com/docker-practice" \
.
docker push dockerpracticesig/docker_practice:vuepress
docker run -it --rm -d -p 4001:80 dockerpracticesig/docker_practice:vuepress
sleep 5
echo "::group::Test"
curl 127.0.0.1:4001
echo "::endgroup::"
env:
PCIT_EMAIL: khs1994@khs1994.com
PCIT_GIT_TOKEN: ${{ secrets.CODING_GIT_TOKEN }}
PCIT_GIT_URL: git.dev.tencent.com/khs1994/docker_practice
PCIT_KEEP_HISTORY: "1"
PCIT_LOCAL_DIR: .vuepress/dist
PCIT_MESSAGE: Sync from yeasy/docker_practice@${{github.sha}} by PCIT
PCIT_TARGET_BRANCH: master
PCIT_USERNAME: khs1994
DOCKER_PASSWORD: ${{secrets.DOCKER_PASSWORD}}
DOCKER_USERNAME: ${{secrets.DOCKER_USERNAME}}

2
.gitignore vendored
View File

@ -10,4 +10,4 @@ _book/
node_modules/
package-lock.json
.vuepress/dist
docker-compose.override.yml

View File

@ -1,53 +0,0 @@
language: bash
services:
- docker
before_install:
- openssl aes-256-cbc -K $encrypted_6cc8cff04075_key -iv $encrypted_6cc8cff04075_iv
-in .travis/id_rsa.enc -out ~/.ssh/id_rsa -d
- chmod 600 ~/.ssh/id_rsa
- export TZ='Asia/Shanghai'
- date
- git config --global user.name "khs1994"
- git config --global user.email "khs1994@khs1994.com"
script:
- docker run -it --rm -v $PWD:/srv/gitbook-src yeasy/docker_practice build
after_success:
- sudo chmod -R 777 _book
- echo "FROM nginx:alpine" >> Dockerfile
- echo "COPY _book /usr/share/nginx/html" >> Dockerfile
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
- docker build -t dockerpracticesig/docker_practice .
- docker run -dit --rm -p 4000:80 dockerpracticesig/docker_practice
- sleep 5
- curl 127.0.0.1:4000
- docker push dockerpracticesig/docker_practice
- cd _book
- git init
- git remote add origin "$DEPLOY_REPO"
- git add .
- COMMIT=`date "+%F %T"`
- git commit -m "Travis CI Site updated $COMMIT"
- git push -f origin master:"$DEPLOY_BRANCH"
env:
global:
- DEPLOY_BRANCH: master
- DEPLOY_REPO: git@github.com:docker-practice/zh-cn.git
addons:
ssh_known_hosts:
- github.com
branches:
only:
- master

View File

@ -1,4 +1,4 @@
FROM node:alpine
FROM node:14.4.0-alpine
ENV TZ=Asia/Shanghai
@ -8,8 +8,8 @@ COPY book.json book.json
COPY docker-entrypoint.sh /usr/local/bin/
RUN apk add --no-cache \
tzdata \
RUN set -x && apk add --no-cache \
tzdata bash \
&& npm install -g gitbook-cli \
&& gitbook install \
&& ln -s /usr/local/bin/docker-entrypoint.sh / \

Binary file not shown.

3
.vuepress/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
/*
!.gitignore
!config.js

View File

@ -1,4 +1,6 @@
module.exports = {
const { config } = require('vuepress-theme-hope')
module.exports = config({
title: 'Docker ',
base: '/',
head: [['script', {}, `
@ -28,62 +30,120 @@ module.exports = {
]
],
plugins: {
sitemap: {
hostname: 'https://vuepress.mirror.docker-practice.com'
},
// sitemap: {
// hostname: 'https://vuepress.mirror.docker-practice.com'
// },
// 'git-log': {
// additionalArgs: '--no-merge',
// onlyFirstAndLastCommit: true,
// },
},
locales: {
"/": {
lang: "zh-CN"
}
},
themeConfig: {
blog: false,
// comment: false,
comment: {
type: "disable", // 使用 Valine
appId: "...", // your appId
appKey: "...", // your appKey
},
pageInfo: [
// 'author',
'reading-time',
'word',
],
footer: {
content: "Made with <a target='_blank' href='https://github.com/vuepress-theme-hope/vuepress-theme-hope'>vuepress-theme-hope</a>",
display: true,
copyright: false,
},
searchPlaceholder: 'Search',
repo: 'yeasy/docker_practice',
repoLabel: 'GitHub',
repoDisplay: true,
hostname: 'https://vuepress.mirror.docker-practice.com',
// author: 'yeasy',
mdEnhance: {
lineNumbers: true,
},
git: {
contributor: false,
},
themeColor: {
blue: '#2196f3',
// red: '#f26d6d',
// green: '#3eaf7c',
// orange: '#fb9b5f'
},
locales: {
"/": {
lang: "zh-CN"
}
},
darkmode: 'auto-switch',
//
showAds: true,
docsRepo: 'yeasy/docker_practice',
docsDir: '/',
docsBranch: 'master',
editLinks: true,
nav: [{
text: ' Docker',
link: '/install/',
},
{
text: 'Docker ',
link: '/'
},
{
text: 'Docker ',
link: '/cases/os/'
},
{
text: 'CI/CD',
link: '/cases/ci/'
},
{
text: 'Docker ',
link: '/repository/'
},
{
text: '',
link: '/underly/',
},
{
text: 'Compose',
link: '/compose/',
},
{
text: 'Kubernetes',
link: '/kubernetes/',
},
{
text: "云计算",
link: "/cloud/",
},
{
text: 'GitHub',
link: 'https://github.com/yeasy/docker_practice'
},
// {
// text: '捐赠',
// link: ''
// },
{
text: '',
link: 'https://cloud.tencent.com/redirect.php?redirect=10058&cps_key=3a5255852d5db99dcd5da4c72f05df61'
},
nav: [
{
text: '',
link: 'https://docker_practice.gitee.io/pic/dpsig-wechat.jpg',
},
{
text: '',
link: 'https://docker_practice.gitee.io/pic/dp-wechat-miniprogram.jpg',
},
{
text: ' Docker',
link: '/install/',
},
{
text: 'Docker ',
link: '/'
},
{
text: 'Docker ',
link: '/cases/os/'
},
{
text: 'CI/CD',
link: '/cases/ci/'
},
{
text: 'Compose',
link: '/compose/',
},
{
text: 'Kubernetes',
link: '/kubernetes/',
},
{
text: "云计算",
link: "/cloud/",
},
// {
// text: 'GitHub',
// link: 'https://github.com/yeasy/docker_practice'
// },
// {
// text: '捐赠',
// link: ''
// },
{
text: '99/',
link: 'https://cloud.tencent.com/act/cps/redirect?redirect=1062&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console'
},
// {
// text: '语言',
// items: [{
@ -106,16 +166,18 @@ module.exports = {
'design',
{
title: "部署 Kubernetes",
collapsable: false,
collapsable: true,
children: [
"setup/",
"setup/docker",
"setup/kubeadm",
"setup/docker-desktop",
"setup/systemd",
"setup/dashboard",
]
},
{
title: "Kubernetes 命令行 kubectl",
collapsable: false,
collapsable: true,
children: [
'kubectl/'
]
@ -123,6 +185,7 @@ module.exports = {
],
'/compose/': [
'introduction',
'v2',
'install',
'usage',
'commands',
@ -130,6 +193,7 @@ module.exports = {
'django',
'rails',
'wordpress',
'lnmp',
],
'/install/': [
'ubuntu',
@ -137,25 +201,12 @@ module.exports = {
'fedora',
'centos',
'raspberry-pi',
// 'offline',
'mac',
'windows',
'mirror',
'experimental',
],
'/underly/': [
'arch',
'namespace',
'cgroups',
'ufs',
'container_format',
'network',
],
'/repository/': [
'dockerhub',
'registry',
'registry_auth',
'nexus3_registry',
],
'/cases/os/': [
{
title: "操作系统",
@ -172,8 +223,8 @@ module.exports = {
title: "在 IDE 中使用 Docker",
collapsable: false,
children: [
'/IDE/',
'/IDE/vsCode',
'/ide/',
'/ide/vsCode',
],
},
],
@ -181,13 +232,12 @@ module.exports = {
'actions/',
{
title: "Drone",
collapsable: false,
collapsable: true,
children: [
'drone/',
'drone/install'
]
},
'travis/'
],
'/': [
'/',
@ -227,7 +277,7 @@ module.exports = {
},
{
title: 'Dockerfile',
collapsable: false,
collapsable: true,
children: [
"image/dockerfile/",
'image/dockerfile/copy',
@ -241,6 +291,8 @@ module.exports = {
'image/dockerfile/workdir',
'image/dockerfile/user',
'image/dockerfile/healthcheck',
'image/dockerfile/label',
'image/dockerfile/shell',
'image/dockerfile/onbuild',
'image/dockerfile/references',
'image/multistage-builds/',
@ -260,6 +312,17 @@ module.exports = {
'container/rm',
],
},
{
title: "Docker 仓库",
collapsable: false,
children: [
'repository/',
'repository/dockerhub',
'repository/registry',
'repository/registry_auth',
'repository/nexus3_registry',
],
},
{
title: "数据管理",
collapsable: false,
@ -280,7 +343,7 @@ module.exports = {
},
{
title: "高级网络配置",
collapsable: false,
collapsable: true,
children: [
'advanced_network/',
'advanced_network/quick_guide',
@ -294,7 +357,7 @@ module.exports = {
},
{
title: "Swarm mode",
collapsable: false,
collapsable: true,
children: [
'swarm_mode/',
'swarm_mode/overview',
@ -308,7 +371,7 @@ module.exports = {
},
{
title: "安全",
collapsable: false,
collapsable: true,
children: [
'security/',
'security/kernel_ns',
@ -319,6 +382,19 @@ module.exports = {
'security/summary',
],
},
{
title: "底层实现",
collapsable: true,
children: [
'underly/',
'underly/arch',
'underly/namespace',
'underly/cgroups',
'underly/ufs',
'underly/container_format',
'underly/network',
],
},
{
title: "Docker Buildx",
collapsable: false,
@ -331,7 +407,7 @@ module.exports = {
},
{
title: "Etcd",
collapsable: false,
collapsable: true,
children: [
'etcd/',
'etcd/intro',
@ -342,25 +418,18 @@ module.exports = {
},
{
title: "Fedora CoreOS",
collapsable: false,
collapsable: true,
children: [
'coreos/',
'coreos/intro',
'coreos/intro_tools',
],
},
{
title: "Docker 开源项目",
collapsable: false,
children: [
'opensource/',
'opensource/linuxkit',
'coreos/install',
],
},
'podman/',
'appendix/faq/',
{
title: "热门镜像介绍",
collapsable: false,
collapsable: true,
children: [
'appendix/repo/',
'appendix/repo/ubuntu',
@ -372,11 +441,12 @@ module.exports = {
'appendix/repo/wordpress',
'appendix/repo/mongodb',
'appendix/repo/redis',
'appendix/repo/minio',
],
},
{
title: "Docker 命令",
collapsable: false,
collapsable: true,
children: [
'appendix/command/',
'appendix/command/docker',
@ -386,38 +456,7 @@ module.exports = {
'appendix/best_practices',
'appendix/debug',
'appendix/resources',
'archive/',
{
title: "Docker Machine",
collapsable: false,
children: [
'machine/',
'machine/install',
'machine/usage',
],
},
{
title: 'Mesos',
collapsable: false,
children: [
'mesos/',
'mesos/intro',
'mesos/installation',
'mesos/architecture',
'mesos/configuration',
'mesos/monitor',
'mesos/framework',
'mesos/summary',
]
},
{
title: 'Docker Swarm',
collapsable: false,
children: [
"swarm/"
]
}
],
},
}
}
});

View File

@ -1,14 +1,22 @@
#
* 1.3.0 2021-YY-DD
* Docker v20.10
* Docker Compose v2
* Docker Hub
* 1.2.0 2020-12-20
*
* 1.1.0 2019-12-31
* v19.x
* Docker v19.03
* `BuildKit`
* `docker buildx` 使
* `docker manifest` 使
* `Ubuntu 14.04` `Debian 8` `Debian 7`
* 1.0.0: 2018-12-31
* v18.x
* Docker v18.x
* Docker
*

View File

@ -1,24 +1,21 @@
# Docker
[![](https://img.shields.io/github/stars/yeasy/docker_practice.svg?style=social&label=Stars)](https://github.com/yeasy/docker_practice) [![](https://travis-ci.org/yeasy/docker_practice.svg?branch=master)](https://travis-ci.org/yeasy/docker_practice) [![](https://img.shields.io/github/release/yeasy/docker_practice/all.svg)](https://github.com/yeasy/docker_practice/releases) [![](https://img.shields.io/badge/Based-Docker%20CE%20v19.x-blue.svg)](https://github.com/docker/docker-ce) [![](https://img.shields.io/badge/Docker%20%E6%8A%80%E6%9C%AF%E5%85%A5%E9%97%A8%E4%B8%8E%E5%AE%9E%E6%88%98-jd.com-red.svg)](https://union-click.jd.com/jdc?e=&p=AyIGZRtYFAcXBFIZWR0yEgRQH1kXAhs3EUQDS10iXhBeGlcJDBkNXg9JHU4YDk5ER1xOGRNLGEEcVV8BXURFUFdfC0RVU1JRUy1OVxUBFwNXGVscMlVYLlAaXAV1Z1JHA0dWEHVXZTliY1QLWStaJQAWB10fXhwKEDdlG1wlUHzf462DsLMO0%2F%2BUjp2VIgZlG18RBBcCUBlbEAoTBWUcWxwySVI7HAhBBxEOBUgOFQYQUGUraxYyIjdVK1glQHxXUEhYEVEUUFQcC0IHGgRRSAgVARAPAhsLFgNCDl0ZWiUAEwZREg%3D%3D&t=W1dCFFlQCxxKQgFHREkdSVJKSQVJHFRXFk9FUlpGQUpLCVBaTFhbXQtWVmpSWRtYEAYQBVUS)
[![](https://img.shields.io/github/stars/yeasy/docker_practice.svg?style=social&label=Stars)](https://github.com/yeasy/docker_practice) [![](https://img.shields.io/github/release/yeasy/docker_practice/all.svg)](https://github.com/yeasy/docker_practice/releases) [![](https://img.shields.io/badge/Based-Docker%20CE%20v20.10-blue.svg)](https://github.com/docker/docker-ce) [![](https://img.shields.io/badge/Docker%20%E6%8A%80%E6%9C%AF%E5%85%A5%E9%97%A8%E4%B8%8E%E5%AE%9E%E6%88%98-jd.com-red.svg)][1]
**v1.1.0**
**v1.3.0**
| | | - |
| :------------- | :------------- | :--- |
| [zh-hans](https://github.com/yeasy/docker_practice) | [![](https://travis-ci.org/yeasy/docker_practice.svg?branch=master)](https://travis-ci.org/yeasy/docker_practice)| [阅读](https://docker_practice.gitee.io/zh-cn) |
| [us-en](https://github.com/yeasy/docker_practice/tree/english) | [![](https://travis-ci.org/yeasy/docker_practice.svg?branch=english)](https://travis-ci.org/yeasy/docker_practice)| [阅读](https://docker_practice.gitee.io/us-en) |
| [zh-hant](https://github.com/yeasy/docker_practice/tree/zh-Hant) | [![](https://travis-ci.org/yeasy/docker_practice.svg?branch=zh-hant)](https://travis-ci.org/yeasy/docker_practice)| [阅读](https://docker_practice.gitee.io/zh-hant) |
| | - |
| :------------- | :--- |
| [](https://github.com/yeasy/docker_practice) | [阅读](https://vuepress.mirror.docker-practice.com/) |
[Docker](https://www.docker.com) 是个划时代的开源项目,它彻底释放了计算虚拟化的威力,极大提高了应用的维护效率,降低了云计算应用开发的成本!使用 Docker可以让应用的部署、测试和分发都变得前所未有的高效和轻松
Docker
Linux Docker Docker 7 ~ 9 10 ~ 13 1415 Docker EtcdCoreOSKubernetesMesos使
Linux Docker Docker 7 ~ 9 10 ~ 12 1314 Docker EtcdFedora CoreOSKubernetes使
* 线[docker-practice.com](https://vuepress.mirror.docker-practice.com/)[GitBook](https://yeasy.gitbooks.io/docker_practice/content/)[Github](https://github.com/yeasy/docker_practice/blob/master/SUMMARY.md)
* [pdf](https://github.com/yeasy/docker_practice/wiki/%E4%B8%8B%E8%BD%BD)[epub](https://github.com/yeasy/docker_practice/wiki/%E4%B8%8B%E8%BD%BD)
* [线 `$ docker run -it --rm -p 4000:80 dockerpracticesig/docker_practice`](https://github.com/yeasy/docker_practice/wiki/%E7%A6%BB%E7%BA%BF%E9%98%85%E8%AF%BB%E5%8A%9F%E8%83%BD%E8%AF%A6%E8%A7%A3)
* 线[docker-practice.com](https://vuepress.mirror.docker-practice.com/)[GitBook](https://yeasy.gitbook.io/docker_practice/)[Github](https://github.com/yeasy/docker_practice/blob/master/SUMMARY.md)
* 线[`$ docker run -it --rm -p 4000:80 ccr.ccs.tencentyun.com/dockerpracticesig/docker_practice:vuepress`](https://github.com/yeasy/docker_practice/wiki/%E7%A6%BB%E7%BA%BF%E9%98%85%E8%AF%BB%E5%8A%9F%E8%83%BD%E8%AF%A6%E8%A7%A3)
Docker 使 Docker [](CONTRIBUTING.md)
@ -28,13 +25,19 @@ Docker 自身仍在快速发展中,生态环境也在蓬勃成长。建议初
##
<p align="center">
<img width="200" src="https://user-images.githubusercontent.com/16733187/49682252-3ac4c500-faec-11e8-86ab-eafe0139be6b.jpg">
<img width="200" src="https://docker_practice.gitee.io/pic/dp-wechat-miniprogram.jpg">
</p>
<p align="center"><strong> ~</strong></p>
##
<p align="center">
<img width="200" src="https://docker_practice.gitee.io/pic/dpsig-wechat.jpg">
</p>
<p align="center"><strong> ~ <code>dpsigs</code> </strong></p>
Docker QQ Docker Docker
* QQ I 341410255
@ -48,27 +51,15 @@ Docker 自身仍在快速发展中,生态环境也在蓬勃成长。建议初
* QQ IX 571502246
* QQ X 145983035
> [Issues](https://github.com/yeasy/docker_practice/issues/new/choose) 来提出。
<p align="center">
<img width="200" src="https://user-images.githubusercontent.com/16733187/65308302-55b87f80-dbbc-11e9-9d42-57eac554fb3b.jpg">
</p>
<p align="center"><strong> ~</strong></p>
> [Issues](https://github.com/yeasy/docker_practice/issues/new/choose) 来提出。
##
[![](https://github.com/yeasy/docker_practice/raw/master/_images/docker_primer3.png)](https://union-click.jd.com/jdc?e=&p=AyIGZRtYFAcXBFIZWR0yEgRQH1kXAhs3EUQDS10iXhBeGlcJDBkNXg9JHU4YDk5ER1xOGRNLGEEcVV8BXURFUFdfC0RVU1JRUy1OVxUBFwNXGVscMlVYLlAaXAV1Z1JHA0dWEHVXZTliY1QLWStaJQAWB10fXhwKEDdlG1wlUHzf462DsLMO0%2F%2BUjp2VIgZlG18RBBcCUBlbEAoTBWUcWxwySVI7HAhBBxEOBUgOFQYQUGUraxYyIjdVK1glQHxXUEhYEVEUUFQcC0IHGgRRSAgVARAPAhsLFgNCDl0ZWiUAEwZREg%3D%3D&t=W1dCFFlQCxxKQgFHREkdSVJKSQVJHFRXFk9FUlpGQUpLCVBaTFhbXQtWVmpSWRtYEAYQBVUS)
[![](https://github.com/yeasy/docker_practice/raw/master/_images/docker_primer3.png)][1]
[Docker ](https://union-click.jd.com/jdc?e=&p=AyIGZRtYFAcXBFIZWR0yEgRQH1kXAhs3EUQDS10iXhBeGlcJDBkNXg9JHU4YDk5ER1xOGRNLGEEcVV8BXURFUFdfC0RVU1JRUy1OVxUBFwNXGVscMlVYLlAaXAV1Z1JHA0dWEHVXZTliY1QLWStaJQAWB10fXhwKEDdlG1wlUHzf462DsLMO0%2F%2BUjp2VIgZlG18RBBcCUBlbEAoTBWUcWxwySVI7HAhBBxEOBUgOFQYQUGUraxYyIjdVK1glQHxXUEhYEVEUUFQcC0IHGgRRSAgVARAPAhsLFgNCDl0ZWiUAEwZREg%3D%3D&t=W1dCFFlQCxxKQgFHREkdSVJKSQVJHFRXFk9FUlpGQUpLCVBaTFhbXQtWVmpSWRtYEAYQBVUS)》第三版已经面世,介绍最新的容器技术栈,欢迎大家阅读使用并反馈建议。
[Docker ][1]使
<p align="center">
<img width="200" src="https://user-images.githubusercontent.com/16733187/57310918-3c3afd80-711d-11e9-8816-266e5ede70bb.jpg">
</p>
<p align="center"><strong>~</strong></p>
* [](https://union-click.jd.com/jdc?e=&p=AyIGZRtYFAcXBFIZWR0yEgRQH1kXAhs3EUQDS10iXhBeGlcJDBkNXg9JHU4YDk5ER1xOGRNLGEEcVV8BXURFUFdfC0RVU1JRUy1OVxUBFwNXGVscMlVYLlAaXAV1Z1JHA0dWEHVXZTliY1QLWStaJQAWB10fXhwKEDdlG1wlUHzf462DsLMO0%2F%2BUjp2VIgZlG18RBBcCUBlbEAoTBWUcWxwySVI7HAhBBxEOBUgOFQYQUGUraxYyIjdVK1glQHxXUEhYEVEUUFQcC0IHGgRRSAgVARAPAhsLFgNCDl0ZWiUAEwZREg%3D%3D&t=W1dCFFlQCxxKQgFHREkdSVJKSQVJHFRXFk9FUlpGQUpLCVBaTFhbXQtWVmpSWRtYEAYQBVUS)
* [][1]
* [China-Pub](http://product.china-pub.com/8052127)
##
@ -78,3 +69,5 @@ Docker 自身仍在快速发展中,生态环境也在蓬勃成长。建议初
</p>
<p align="center"><strong> coffee~</strong></p>
[1]: https://union-click.jd.com/jdc?e=&p=JF8AANADIgZlGF0VAxUDVBJdHDISBFAfWRcCGzcRRANLXSJeEF4aVwkMGQ1eD0kdSVJKSQVJHBIEUB9ZFwIbGAxeB0gyS34PbFlHVHNkI0MQEAoIcSxyBWFLRAtZK1olABYHXR9eHAoQN2UbXCVQfN_jrYOwsw7T_5SOnZUiBmUbXBYBFwBVG14UBBAAZRxbHDJJUjscCEEHEQ4FSA4VBhBQZStrFjIiN1UrWCVAfARQT1gQA0cFAEwOEAcRDlMTDEALQAFTEwwRUhMAUR1cJQATBlES

View File

@ -4,175 +4,169 @@
* [](CHANGELOG.md)
* [](CONTRIBUTING.md)
* [Docker ](introduction/README.md)
* [ Docker](introduction/what.md)
* [ Docker](introduction/why.md)
* [ Docker](introduction/what.md)
* [ Docker](introduction/why.md)
* [](basic_concept/README.md)
* [](basic_concept/image.md)
* [](basic_concept/container.md)
* [](basic_concept/repository.md)
* [](basic_concept/image.md)
* [](basic_concept/container.md)
* [](basic_concept/repository.md)
* [ Docker](install/README.md)
* [Ubuntu](install/ubuntu.md)
* [Debian](install/debian.md)
* [Fedora](install/fedora.md)
* [CentOS](install/centos.md)
* [Raspberry Pi](install/raspberry-pi.md)
* [macOS](install/mac.md)
* [Windows 10](install/windows.md)
* [](install/mirror.md)
* [](install/experimental.md)
* [Ubuntu](install/ubuntu.md)
* [Debian](install/debian.md)
* [Fedora](install/fedora.md)
* [CentOS](install/centos.md)
* [Raspberry Pi](install/raspberry-pi.md)
* [Linux 线](install/offline.md)
* [macOS](install/mac.md)
* [Windows 10](install/windows.md)
* [](install/mirror.md)
* [](install/experimental.md)
* [使](image/README.md)
* [](image/pull.md)
* [](image/list.md)
* [](image/rm.md)
* [ commit ](image/commit.md)
* [使 Dockerfile ](image/build.md)
* [Dockerfile ](image/dockerfile/README.md)
* [COPY ](image/dockerfile/copy.md)
* [ADD ](image/dockerfile/add.md)
* [CMD ](image/dockerfile/cmd.md)
* [ENTRYPOINT ](image/dockerfile/entrypoint.md)
* [ENV ](image/dockerfile/env.md)
* [ARG ](image/dockerfile/arg.md)
* [VOLUME ](image/dockerfile/volume.md)
* [EXPOSE ](image/dockerfile/expose.md)
* [WORKDIR ](image/dockerfile/workdir.md)
* [USER ](image/dockerfile/user.md)
* [HEALTHCHECK ](image/dockerfile/healthcheck.md)
* [ONBUILD ](image/dockerfile/onbuild.md)
* [](image/dockerfile/references.md)
* [Dockerfile ](image/multistage-builds/README.md)
* [ Laravel ](image/multistage-builds/laravel.md)
* [ Docker ](image/manifest.md)
* [](image/other.md)
* [](image/internal.md)
* [](image/pull.md)
* [](image/list.md)
* [](image/rm.md)
* [ commit ](image/commit.md)
* [使 Dockerfile ](image/build.md)
* [Dockerfile ](image/dockerfile/README.md)
* [COPY ](image/dockerfile/copy.md)
* [ADD ](image/dockerfile/add.md)
* [CMD ](image/dockerfile/cmd.md)
* [ENTRYPOINT ](image/dockerfile/entrypoint.md)
* [ENV ](image/dockerfile/env.md)
* [ARG ](image/dockerfile/arg.md)
* [VOLUME ](image/dockerfile/volume.md)
* [EXPOSE ](image/dockerfile/expose.md)
* [WORKDIR ](image/dockerfile/workdir.md)
* [USER ](image/dockerfile/user.md)
* [HEALTHCHECK ](image/dockerfile/healthcheck.md)
* [ONBUILD ](image/dockerfile/onbuild.md)
* [LABEL ](image/dockerfile/label.md)
* [SHELL ](image/dockerfile/shell.md)
* [](image/dockerfile/references.md)
* [Dockerfile ](image/multistage-builds/README.md)
* [ Laravel ](image/multistage-builds/laravel.md)
* [ Docker ](image/manifest.md)
* [](image/other.md)
* [](image/internal.md)
* [](container/README.md)
* [](container/run.md)
* [](container/daemon.md)
* [](container/stop.md)
* [](container/attach_exec.md)
* [](container/import_export.md)
* [](container/rm.md)
* [](container/run.md)
* [](container/daemon.md)
* [](container/stop.md)
* [](container/attach_exec.md)
* [](container/import_export.md)
* [](container/rm.md)
* [访](repository/README.md)
* [Docker Hub](repository/dockerhub.md)
* [](repository/registry.md)
* [](repository/registry_auth.md)
* [Nexus 3](repository/nexus3_registry.md)
* [Docker Hub](repository/dockerhub.md)
* [](repository/registry.md)
* [](repository/registry_auth.md)
* [Nexus 3](repository/nexus3_registry.md)
* [](data_management/README.md)
* [](data_management/volume.md)
* [](data_management/bind-mounts.md)
* [](data_management/volume.md)
* [](data_management/bind-mounts.md)
* [使](network/README.md)
* [访](network/port_mapping.md)
* [](network/linking.md)
* [ DNS](network/dns.md)
* [访](network/port_mapping.md)
* [](network/linking.md)
* [ DNS](network/dns.md)
* [](advanced_network/README.md)
* [](advanced_network/quick_guide.md)
* [访](advanced_network/access_control.md)
* [](advanced_network/port_mapping.md)
* [ docker0 ](advanced_network/docker0.md)
* [](advanced_network/bridge.md)
* [](advanced_network/example.md)
* [](advanced_network/config_file.md)
* [](advanced_network/ptp.md)
* [](advanced_network/quick_guide.md)
* [访](advanced_network/access_control.md)
* [](advanced_network/port_mapping.md)
* [ docker0 ](advanced_network/docker0.md)
* [](advanced_network/bridge.md)
* [](advanced_network/example.md)
* [](advanced_network/config_file.md)
* [ HTTP/HTTPS ](advanced_network/http_https_proxy.md)
* [](advanced_network/ptp.md)
* [Docker Buildx](buildx/README.md)
* [BuildKit](buildx/buildkit.md)
* [使 buildx ](buildx/buildx.md)
* [使 buildx Docker ](buildx/multi-arch-images.md)
* [BuildKit](buildx/buildkit.md)
* [使 buildx ](buildx/buildx.md)
* [使 buildx Docker ](buildx/multi-arch-images.md)
* [Docker Compose](compose/README.md)
* [](compose/introduction.md)
* [](compose/install.md)
* [使](compose/usage.md)
* [](compose/commands.md)
* [Compose ](compose/compose_file.md)
* [ Django](compose/django.md)
* [ Rails](compose/rails.md)
* [ WordPress](compose/wordpress.md)
* [](compose/introduction.md)
* [Compose v2](compose/v2.md)
* [](compose/install.md)
* [使](compose/usage.md)
* [](compose/commands.md)
* [Compose ](compose/compose_file.md)
* [ Django](compose/django.md)
* [ Rails](compose/rails.md)
* [ WordPress](compose/wordpress.md)
* [ LNMP](compose/lnmp.md)
* [Swarm mode](swarm_mode/README.md)
* [](swarm_mode/overview.md)
* [ Swarm ](swarm_mode/create.md)
* [](swarm_mode/deploy.md)
* [使 compose ](swarm_mode/stack.md)
* [](swarm_mode/secret.md)
* [](swarm_mode/config.md)
* [](swarm_mode/rolling_update.md)
* [](swarm_mode/overview.md)
* [ Swarm ](swarm_mode/create.md)
* [](swarm_mode/deploy.md)
* [使 compose ](swarm_mode/stack.md)
* [](swarm_mode/secret.md)
* [](swarm_mode/config.md)
* [](swarm_mode/rolling_update.md)
* [](security/README.md)
* [](security/kernel_ns.md)
* [](security/control_group.md)
* [](security/daemon_sec.md)
* [](security/kernel_capability.md)
* [](security/other_feature.md)
* [](security/summary.md)
* [](security/kernel_ns.md)
* [](security/control_group.md)
* [](security/daemon_sec.md)
* [](security/kernel_capability.md)
* [](security/other_feature.md)
* [](security/summary.md)
* [](underly/README.md)
* [](underly/arch.md)
* [](underly/namespace.md)
* [](underly/cgroups.md)
* [](underly/ufs.md)
* [](underly/container_format.md)
* [](underly/network.md)
* [](underly/arch.md)
* [](underly/namespace.md)
* [](underly/cgroups.md)
* [](underly/ufs.md)
* [](underly/container_format.md)
* [](underly/network.md)
* [Etcd ](etcd/README.md)
* [](etcd/intro.md)
* [](etcd/install.md)
* [](etcd/cluster.md)
* [使 etcdctl](etcd/etcdctl.md)
* [CoreOS ](coreos/README.md)
* [](coreos/intro.md)
* [](coreos/intro_tools.md)
* [](etcd/intro.md)
* [](etcd/install.md)
* [](etcd/cluster.md)
* [使 etcdctl](etcd/etcdctl.md)
* [Fedora CoreOS](coreos/README.md)
* [](coreos/intro.md)
* [](coreos/install.md)
* [Kubernetes - ](kubernetes/README.md)
* [](kubernetes/intro.md)
* [](kubernetes/concepts.md)
* [](kubernetes/design.md)
* [](kubernetes/intro.md)
* [](kubernetes/concepts.md)
* [](kubernetes/design.md)
* [ Kubernetes](kubernetes/setup/README.md)
* [使 Docker ](kubernetes/setup/docker.md)
* [ Docker Desktop 使](kubernetes/setup/docker-desktop.md)
* [使 kubeadm kubernetes(CRI 使 containerd)](kubernetes/setup/kubeadm.md)
* [ Docker Desktop 使](kubernetes/setup/docker-desktop.md)
* [ kubernetes ](kubernetes/setup/systemd.md)
* [ Dashboard](kubernetes/setup/dashboard.md)
* [Kubernetes kubectl](kubernetes/kubectl/README.md)
* [](cloud/README.md)
* [](cloud/intro.md)
* [](cloud/tencentCloud.md)
* [](cloud/alicloud.md)
* [](cloud/aws.md)
* [](cloud/summary.md)
* [](cloud/intro.md)
* [](cloud/tencentCloud.md)
* [](cloud/alicloud.md)
* [](cloud/aws.md)
* [](cloud/summary.md)
* [ - ](cases/os/README.md)
* [Busybox](cases/os/busybox.md)
* [Alpine](cases/os/alpine.md)
* [Debian Ubuntu](cases/os/debian.md)
* [CentOS Fedora](cases/os/centos.md)
* [](cases/os/summary.md)
* [Busybox](cases/os/busybox.md)
* [Alpine](cases/os/alpine.md)
* [Debian Ubuntu](cases/os/debian.md)
* [CentOS Fedora](cases/os/centos.md)
* [](cases/os/summary.md)
* [ - CI/CD](cases/ci/README.md)
* [GitHub Actions](cases/ci/actions/README.md)
* [Drone](cases/ci/drone/README.md)
* [ Drone](cases/ci/drone/install.md)
* [Travis CI](cases/ci/travis/README.md)
* [ IDE 使 Docker](IDE/README.md)
* [VS Code](IDE/vsCode.md)
* [Docker ](opensource/README.md)
* [LinuxKit](opensource/linuxkit.md)
* [GitHub Actions](cases/ci/actions/README.md)
* [Drone](cases/ci/drone/README.md)
* [ Drone](cases/ci/drone/install.md)
* [ IDE 使 Docker](ide/README.md)
* [VS Code](ide/vsCode.md)
* [podman - Linux ](podman/README.md)
* [](appendix/README.md)
* [](appendix/faq/README.md)
* [](appendix/repo/README.md)
* [Ubuntu](appendix/repo/ubuntu.md)
* [CentOS](appendix/repo/centos.md)
* [Nginx](appendix/repo/nginx.md)
* [PHP](appendix/repo/php.md)
* [Node.js](appendix/repo/nodejs.md)
* [MySQL](appendix/repo/mysql.md)
* [WordPress](appendix/repo/wordpress.md)
* [MongoDB](appendix/repo/mongodb.md)
* [Redis](appendix/repo/redis.md)
* [Docker ](appendix/command/README.md)
* [ (docker)](appendix/command/docker.md)
* [ (dockerd)](appendix/command/dockerd.md)
* [Dockerfile ](appendix/best_practices.md)
* [ Docker](appendix/debug.md)
* [](appendix/resources.md)
* [](archive/README.md)
* [Mesos - ](mesos/README.md)
* [Mesos ](mesos/intro.md)
* [使](mesos/installation.md)
* [](mesos/architecture.md)
* [Mesos ](mesos/configuration.md)
* [](mesos/monitor.md)
* [](mesos/framework.md)
* [](mesos/summary.md)
* [Docker Machine](machine/README.md)
* [](machine/install.md)
* [使](machine/usage.md)
* [Docker Swarm](swarm/README.md)
* [](appendix/faq/README.md)
* [](appendix/repo/README.md)
* [Ubuntu](appendix/repo/ubuntu.md)
* [CentOS](appendix/repo/centos.md)
* [Nginx](appendix/repo/nginx.md)
* [PHP](appendix/repo/php.md)
* [Node.js](appendix/repo/nodejs.md)
* [MySQL](appendix/repo/mysql.md)
* [WordPress](appendix/repo/wordpress.md)
* [MongoDB](appendix/repo/mongodb.md)
* [Redis](appendix/repo/redis.md)
* [Minio](appendix/repo/minio.md)
* [Docker ](appendix/command/README.md)
* [ - docker](appendix/command/docker.md)
* [ - dockerd](appendix/command/dockerd.md)
* [Dockerfile ](appendix/best_practices.md)
* [ Docker](appendix/debug.md)
* [](appendix/resources.md)

View File

@ -6,10 +6,10 @@
Docker `docker0` Linux bridge
Docker [RFC1918](https://tools.ietf.org/html/rfc1918) 中定义)中的一个地址给 `docker0` 接口。比如典型的 `172.17.42.1`,掩码为 `255.255.0.0`。此后启动的容器内的网口也会自动分配一个同一网段(`172.17.0.0/16`)的地址。
Docker [RFC1918](https://datatracker.ietf.org/doc/html/rfc1918) 中定义)中的一个地址给 `docker0` 接口。比如典型的 `172.17.42.1`,掩码为 `255.255.0.0`。此后启动的容器内的网口也会自动分配一个同一网段(`172.17.0.0/16`)的地址。
Docker `veth pair` `eth0` `docker0` `veth` `vethAQI2QT`Docker
![Docker ](_images/network.png)
![Docker ](./_images/network.png)
Docker Linux Docker

View File

@ -1,4 +1,5 @@
# 访
访 Linux `iptables` `iptables` Linux
## 访

View File

@ -1,4 +1,5 @@
#
## pipework

View File

@ -0,0 +1,74 @@
# HTTP/HTTPS
使Docker使 HTTP/HTTPS 使
## dockerd
"docker pull" dockerd dockerd systemd "docker pull" 使 HTTP/HTTPS systemd
- dockerd
```
sudo mkdir -p /etc/systemd/system/docker.service.d
```
- dockerd HTTP/HTTPS /etc/systemd/system/docker.service.d/http-proxy.conf
```
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:8080/"
Environment="HTTPS_PROXY=http://proxy.example.com:8080/"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com"
```
- docker
```
sudo systemctl daemon-reload
sudo systemctl restart docker
```
## docker
使 HTTP/HTTPS docker
- docker ~/.docker/config.json
```
{
"proxies":
{
"default":
{
"httpProxy": "http://proxy.example.com:8080/",
"httpsProxy": "http://proxy.example.com:8080/",
"noProxy": "localhost,127.0.0.1,.example.com"
}
}
}
```
- "docker run"
| | docker run |
| -------- | ---------------- |
| HTTP_PROXY | --env HTTP_PROXY="http://proxy.example.com:8080/" |
| HTTPS_PROXY | --env HTTPS_PROXY="http://proxy.example.com:8080/" |
| NO_PROXY | --env NO_PROXY="localhost,127.0.0.1,.example.com" |
## docker build
使 HTTP/HTTPS "docker build" Dockerfile
- 使 "--build-arg" "docker build"
```
docker build \
--build-arg "HTTP_PROXY=http://proxy.example.com:8080/" \
--build-arg "HTTPS_PROXY=http://proxy.example.com:8080/" \
--build-arg "NO_PROXY=localhost,127.0.0.1,.example.com" .
```
- Dockerfile
| | Dockerfile |
| -------- | ---------------- |
| HTTP_PROXY | ENV HTTP_PROXY="http://proxy.example.com:8080/" |
| HTTPS_PROXY | ENV HTTPS_PROXY="http://proxy.example.com:8080/" |
| NO_PROXY | ENV NO_PROXY="localhost,127.0.0.1,.example.com" |

View File

@ -167,9 +167,9 @@ RUN apt-get update && apt-get install -y \
&& rm -rf /var/lib/apt/lists/*
```
`s3cmd` `1.1.*`使 `apt-get udpate`
`s3cmd` `1.1.*`使 `apt-get update`
apt `var/lib/apt/lists` `RUN` `apt-get udpate` `apt-get install`
apt `var/lib/apt/lists` `RUN` `apt-get update` `apt-get install`
> Debian Ubuntu apt-get clean apt-get clean
@ -329,7 +329,7 @@ $ docker run --rm -it postgres bash
使 `USER` root `Dockerfile` 使 `RUN groupadd -r postgres && useradd -r -g postgres postgres`
> UID/GID UID/GID UID/GID UID/GID
> UID/GID UID/GID UID/GID UID/GID
使 `sudo` TTY `sudo` root root 使 [gosu](https://github.com/tianon/gosu)。

View File

@ -21,8 +21,8 @@ $ sudo kill -SIGHUP $(pidof dockerd)
##
```bash
$ sudo dmesag |grep dockerd
$ sudo dmesag |grep runc
$ sudo dmesg |grep dockerd
$ sudo dmesg |grep runc
```
## Docker

View File

@ -12,13 +12,13 @@
###
Docker `/var/lib/docker/` `aufs` `container` `graph` `aufs`
Docker `/var/lib/docker/` `overlay2` `containers` `image` `overlay2`
### Docker
* debian:wheezy debian:stretch
* `alpine`
*
@ -149,7 +149,7 @@ lrwxrwxrwx. 1 root root 15 11月 17 13:43 docker -> /storage/docker
LXC Linux Docker
*
* AUFS 便
* OverlayFS 便
* Git便
*
* Docker Docker PaaSCI Docker 便

58
appendix/repo/minio.md Normal file
View File

@ -0,0 +1,58 @@
# minio
**MinIO** Apache License v2.0 S3 / kb 5T
MinIO , NodeJS, Redis MySQL
[](https://docs.min.io/)
## 使
使
```bash
$ docker run -d -p 9000:9000 -p 9090:9090 minio/minio server /data --console-address ':9090'
```
## 线
###
`minio/minio`
```bash
$ docker save -o minio.tar minio/minio:latest
```
> 使docker save 使image id 使+tag
###
使
```bash
$ docker load minio.tar
```
### minio
- `/mnt/data`
- `MINIO_ROOT_USER`
- `MINIO_ROOT_PASSWORD`
- name,minio1()
- 90009090 , `9009:9000`
```bash
$ sudo docker run -d -p 9000:9000 -p 9090:9090 --name minio1 \
-e "MINIO_ROOT_USER=改成自己需要的" \
-e "MINIO_ROOT_PASSWORD=改成自己需要的" \
-v /mnt/data:/data \
--restart=always \
minio/minio server /data --console-address ':9090'
```
### 访 web
http://x.x.x.x:9090

View File

@ -4,7 +4,7 @@
[Nginx](https://en.wikipedia.org/wiki/Nginx) 是开源的高效的 Web 服务器实现,支持 HTTP、HTTPS、SMTP、POP3、IMAP 等协议。
`https://hub.docker.com/_/nginx/` Nginx 1.0 ~ 1.17.x
`https://hub.docker.com/_/nginx/` Nginx 1.0 ~ 1.19.x
## 使
@ -16,7 +16,7 @@ $ docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d ngin
使 Dockerfile
```bash
```docker
FROM nginx
COPY static-html-directory /usr/share/nginx/html
```
@ -39,7 +39,8 @@ Nginx的默认配置文件路径为 `/etc/nginx/nginx.conf`,可以通过映射
```bash
$ docker run -d \
--name some-nginx \
-v /some/nginx.conf:/etc/nginx/nginx.conf:ro \
-p 8080:80 \
-v /path/nginx.conf:/etc/nginx/nginx.conf:ro \
nginx
```

View File

@ -4,13 +4,13 @@
[Node.js](https://en.wikipedia.org/wiki/Node.js) 是基于 JavaScript 的可扩展服务端和网络软件开发平台。
`https://hub.docker.com/_/node/` Node.js 0.10 ~ 12.x
`https://hub.docker.com/_/node/` Node.js 0.10 ~ 14.x
## 使
Dockerfile
```bash
```docker
FROM node:12
# replace this with your application's default port
EXPOSE 8888

View File

@ -2,9 +2,9 @@
##
[PHP](https://en.wikipedia.org/wiki/php)Hypertext Preprocessor 超文本预处理器的字母缩写)是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML 中,尤其适合 web 开发。
[PHP](https://en.wikipedia.org/wiki/Php)Hypertext Preprocessor 超文本预处理器的字母缩写)是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML 中,尤其适合 web 开发。
`https://hub.docker.com/_/php/` PHP 5.x ~ 7.x
`https://hub.docker.com/_/php/` PHP 5.x ~ 8.x
## 使

View File

@ -4,7 +4,7 @@
[Redis](https://en.wikipedia.org/wiki/Redis) 是开源的内存 Key-Value 数据库实现。
`https://hub.docker.com/_/redis/` Redis 3.x ~ 5.x
`https://hub.docker.com/_/redis/` Redis 3.x ~ 6.x
## 使

View File

@ -4,14 +4,14 @@
[Ubuntu](https://en.wikipedia.org/wiki/Ubuntu) 是流行的 Linux 发行版,其自带软件版本往往较新一些。
`https://hub.docker.com/_/ubuntu/` Ubuntu 12.04 ~ 19.04
`https://hub.docker.com/_/ubuntu/` Ubuntu 12.04 ~ 20.04
## 使
Ubuntu
```bash
$ docker run --name some-ubuntu -it ubuntu:18.04
$ docker run --name some-ubuntu -it ubuntu:20.04
root@523c70904d54:/#
```

View File

@ -3,10 +3,11 @@
##
* Docker https://www.docker.com
* Docker https://blog.docker.com/
* Docker https://www.docker.com/blog/
* Docker https://docs.docker.com/
* Docker Hubhttps://hub.docker.com
* Docker https://github.com/moby/moby
* Docker 线 https://github.com/docker/roadmap/projects
* Docker https://docs.docker.com/release-notes/
* Docker https://docs.docker.com/engine/faq/
* Docker APIhttps://docs.docker.com/develop/sdk/

View File

@ -1,7 +1,7 @@
#
* Docker Machine
* [Docker Machine](https://github.com/yeasy/docker_practice/tree/ca29ab51b121f43563f5d6659dedbda5cb6f048d/machine)
* [Docker Swarm](https://github.com/yeasy/docker_practice/tree/ca29ab51b121f43563f5d6659dedbda5cb6f048d/swarm)
* Mesos
* Docker Swarm

View File

@ -1,7 +1,8 @@
#
Docker
* `Image`
* `Container`
* `Repository`
Docker
**Docker**
* ****`Image`
* ****`Container`
* ****`Repository`
**Docker**

View File

@ -8,6 +8,6 @@
Docker 使 [Volume](../data_management/volume.md)宿宿
Docker 使 [Volume](../data_management/volume.md) [宿](../data_management/bind-mounts.md)宿
使

View File

@ -1,12 +1,12 @@
# Docker
Linux `root` Docker Image `root` `ubuntu:18.04` Ubuntu 18.04 `root`
**** **** `Linux` `root` **Docker **`Image` `root` `ubuntu:18.04` Ubuntu 18.04 `root`
Docker
**Docker ** ****
##
`root` Docker [Union FS](https://en.wikipedia.org/wiki/Union_mount) 的技术,将其设计为分层存储的架构。所以严格来说,镜像并非是像一个 ISO 那样的打包文件,镜像只是一个虚拟的概念,其实际体现并非由一个文件组成,而是由一组文件系统组成,或者说,由多层文件系统联合组成。
`root` Docker [Union FS](https://en.wikipedia.org/wiki/Union_mount) 的技术,将其设计为分层存储的架构。所以严格来说,镜像并非是像一个 `ISO` 那样的打包文件,镜像只是一个虚拟的概念,其实际体现并非由一个文件组成,而是由一组文件系统组成,或者说,由多层文件系统联合组成。
西西

View File

@ -14,16 +14,16 @@
Docker Registry 使 Registry
使 Registry [Docker Hub](https://hub.docker.com/),这也是默认的 Registry并拥有大量的高质量的官方镜像。除此以外,还有 [CoreOS](https://coreos.com/) 的 [Quay.io](https://quay.io/repository/)CoreOS 相关的镜像存储在这里Google 的 [Google Container Registry](https://cloud.google.com/container-registry/)[Kubernetes](https://kubernetes.io/) 的镜像使用的就是这个服务。
使 Registry [Docker Hub](https://hub.docker.com/),这也是默认的 Registry并拥有大量的高质量的 [官方镜像](https://hub.docker.com/search?q=&type=image&image_filter=official)。除此以外,还有 Red Hat 的 [Quay.io](https://quay.io/repository/)Google 的 [Google Container Registry](https://cloud.google.com/container-registry/)[Kubernetes](https://kubernetes.io/) 的镜像使用的就是这个服务;代码托管平台 [GitHub](https://github.com) 推出的 [ghcr.io](https://docs.github.com/cn/packages/working-with-a-github-packages-registry/working-with-the-container-registry)
访 Docker Hub `Registry Mirror`**** [](https://cr.console.aliyun.com/#/accelerator)、[DaoCloud 加速器](https://www.daocloud.io/mirror#accelerator-doc) 等。使用加速器会直接从国内的地址下载 Docker Hub 的镜像,比直接从 Docker Hub 下载速度会提高很多。在 [安装 Docker](../install/mirror.md) 一节中有详细的配置方法。
访 Docker Hub `Registry Mirror` **** [](https://www.aliyun.com/product/acr?source=5176.11533457&userCode=8lx5zmtu)、[DaoCloud 加速器](https://www.daocloud.io/mirror#accelerator-doc) 等。使用加速器会直接从国内的地址下载 Docker Hub 的镜像,比直接从 Docker Hub 下载速度会提高很多。在 [安装 Docker](../install/mirror.md) 一节中有详细的配置方法。
Docker Hub [](https://hub.tenxcloud.com/)、[网易云镜像服务](https://c.163.com/hub#/m/library/)、[DaoCloud 镜像市场](https://hub.daocloud.io/)、[阿里云镜像库](https://cr.console.aliyun.com) 等。
Docker Hub [](https://c.163.com/hub#/m/library/)、[DaoCloud 镜像市场](https://hub.daocloud.io/)、[阿里云镜像库](https://www.aliyun.com/product/acr?source=5176.11533457&userCode=8lx5zmtu) 等。
## Docker Registry
使 Docker RegistryDocker [Docker Registry](https://hub.docker.com/_/registry/) 镜像,可以直接使用做为私有 Registry 服务。在 [私有仓库](../repository/registry.md) 一节中,会有进一步的搭建私有 Registry 服务的讲解。
Docker Registry [Docker Registry API](https://docs.docker.com/registry/spec/api/) 的服务端实现,足以支持 `docker` 命令,不影响使用。但不包含图形界面,以及镜像维护、用户管理、访问控制等高级功能。在官方的商业化版本 [Docker Trusted Registry](https://docs.docker.com/datacenter/dtr/2.0/) 中,提供了这些高级功能。
Docker Registry [Docker Registry API](https://docs.docker.com/registry/spec/api/) 的服务端实现,足以支持 `docker` 命令,不影响使用。但不包含图形界面,以及镜像维护、用户管理、访问控制等高级功能。
Docker Registry Docker Registry API[Harbor](https://github.com/goharbor/harbor) 和 [Sonatype Nexus](../repository/nexus3_registry.md)。

View File

@ -2,9 +2,9 @@
**BuildKit** https://github.com/moby/buildkit 开源。
**使Docker Hub Docker 18.09BuildKit 使使 BuildKit 使 Dockerfile Dockerfile.buildkit**
**使 Docker 18.09BuildKit 使使 BuildKit 使 Dockerfile Dockerfile.buildkit**
**docker-compose build BuildKit**
Docker Hub buildkit https://github.com/docker-practice/docker-hub-buildx
## `Dockerfile`
@ -145,6 +145,10 @@ $ ssh-add ~/.ssh/id_rsa
$ docker build -t test --ssh default=$SSH_AUTH_SOCK .
```
## docker-compose build 使 Buildkit
`COMPOSE_DOCKER_CLI_BUILD=1` 使
##
* https://github.com/moby/buildkit/blob/master/frontend/dockerfile/docs/experimental.md

View File

@ -1,9 +1,5 @@
# 使 Buildx
## Buildx
`buildx` [](../install/experimental.md)
## 使
使 `docker buildx build`

View File

@ -9,13 +9,21 @@
Docker for Linux `arm` Docker
```bash
$ docker run --rm --privileged docker/binfmt:820fdd95a9972a5308930a2bdfb8573dd4447ad3
$ docker run --rm --privileged tonistiigi/binfmt:latest --install all
```
Docker `builder` `--platform` `builder`
Docker `builder` `--platform` `builder` 使 [](https://github.com/moby/buildkit/blob/master/docs/buildkitd.toml.md) 的 [`dockerpracticesig/buildkit:master`](https://github.com/docker-practice/buildx) 镜像替换官方镜像。
> https://github.com/docker-practice/buildx 构建自己的 buildkit 镜像并使用它。
```bash
$ docker buildx create --name mybuilder --driver docker-container
#
$ docker buildx create --use --name=mybuilder-cn --driver docker-container --driver-opt image=dockerpracticesig/buildkit:master
# (coding.net )
$ docker buildx create --use --name=mybuilder-cn --driver docker-container --driver-opt image=dockerpracticesig/buildkit:master-tencent
# $ docker buildx create --name mybuilder --driver docker-container
$ docker buildx use mybuilder
```
@ -58,3 +66,61 @@ Linux buildkitsandbox 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 aarch6
$ docker run -it --rm myusername/hello
Linux buildkitsandbox 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 Linux
```
##
`Dockerfile`
**TARGETPLATFORM**
`linux/amd64`, `linux/arm/v7`, `windows/amd64`
**TARGETOS**
`TARGETPLATFORM` OS `linux`, `windows`
**TARGETARCH**
`TARGETPLATFORM` `amd64`, `arm`
**TARGETVARIANT**
`TARGETPLATFORM` `v7`
**BUILDPLATFORM**
`linux/amd64`
**BUILDOS**
`BUILDPLATFORM` OS `linux`
**BUILDARCH**
`BUILDPLATFORM` `amd64`
**BUILDVARIANT**
`BUILDPLATFORM` `v7`
### 使
`linux/arm/v7` `linux/amd64`
* `bin/dist-linux-arm`
* `bin/dist-linux-amd64`
`Dockerfile`
```docker
FROM scratch
# 使
ARG TARGETOS
ARG TARGETARCH
COPY bin/dist-${TARGETOS}-${TARGETARCH} /dist
ENTRYPOINT ["dist"]
```

View File

@ -25,4 +25,4 @@ jobs:
##
* [Actions Docs](https://help.github.com/en/categories/automating-your-workflow-with-github-actions)
* [Actions Docs](https://docs.github.com/en/actions)

View File

@ -86,7 +86,7 @@ $ git push origin master
`Drone` Drone Cloud
![](_images/drone-build.png)
![](./_images/drone-build.png)
GitHubDocker Registry

View File

@ -3,7 +3,7 @@ version: '3'
services:
drone-server:
image: drone/drone:1
image: drone/drone:2.3.1
ports:
- 443:443
- 80:80
@ -12,7 +12,6 @@ services:
- ./ssl:/etc/certs
restart: always
environment:
- DRONE_AGENTS_ENABLED=true
- DRONE_SERVER_HOST=${DRONE_SERVER_HOST:-drone.domain.com}
- DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO:-https}
- DRONE_RPC_SECRET=${DRONE_RPC_SECRET:-secret}

View File

@ -30,7 +30,7 @@ version: '3'
services:
drone-server:
image: drone/drone:1
image: drone/drone:2.3.1
ports:
- 443:443
- 80:80
@ -39,7 +39,6 @@ services:
- ./ssl:/etc/certs
restart: always
environment:
- DRONE_AGENTS_ENABLED=true
- DRONE_SERVER_HOST=${DRONE_SERVER_HOST:-https://drone.yeasy.com}
- DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO:-https}
- DRONE_RPC_SECRET=${DRONE_RPC_SECRET:-secret}

View File

@ -1,47 +0,0 @@
# Travis CI 使 Docker
GitHub [Travis CI](https://travis-ci.com/) 会根据项目根目录 `.travis.yml` 文件设置的指令,执行一系列操作。
Travis CI 使 Docker /CI/CD GitHub Docker Docker Hub
##
https://travis-ci.com/account/repositories 选择 GitHub 仓库,按照指引安装 GitHub App 来启用 GitHub 仓库构建。
`Dockerfile`
```docker
FROM alpine
RUN echo "Hello World"
```
Travis CI `.travis.yml`
```yml
language: bash
dist: xenial
services:
- docker
before_script:
# docker hub
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
script:
#
- echo "test code"
after_success:
#
- docker build -t username/alpine .
- docker push username/alpine
```
> Travis CI `DOCKER_PASSWORD` `DOCKER_USERNAME`
##
GitHub [Travis CI](https://travis-ci.com/) 查看构建详情。

View File

@ -1,16 +0,0 @@
language: bash
dist: xenial
services:
- docker
before_script:
- echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
script:
- echo "test code"
after_success:
- docker build -t username/alpine .
- docker push username/alpine

View File

@ -1,3 +0,0 @@
FROM alpine
RUN echo "Hello World"

View File

@ -2,7 +2,7 @@
##
![Apline Linux ](_images/alpinelinux-logo.png)
![Alpine Linux ](./_images/alpinelinux-logo.png)
`Alpine` `Linux` `Linux` `Alpine` `musl libc` `busybox` `busybox` `Alpine` `apk` `https://pkgs.alpinelinux.org/packages` `apk`
@ -50,10 +50,17 @@ $ apk add --no-cache <package>
`Alpine` `https://pkgs.alpinelinux.org/packages` 使
```bash
$ echo "http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
$ echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
$ apk --update add --no-cache <package>
```
访 `apk` 使 `apk`
```docker
RUN sed -i "s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g" /etc/apk/repositories \
&& apk add --no-cache <package>
```
##
* `Alpine` https://www.alpinelinux.org/

View File

@ -2,7 +2,7 @@
##
![Busybox - Linux ](_images/busybox-logo.png)
![Busybox - Linux ](./_images/busybox-logo.png)
`BusyBox` Linux `cat``echo``grep``mount``telnet` MB 便Linux
@ -10,30 +10,15 @@
##
`Docker Hub` `busybox`
```bash
$ docker search busybox
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 755 [OK]
progrium/busybox 63 [OK]
radial/busyboxplus Full-chain, Internet enabled, busybox made... 11 [OK]
odise/busybox-python 3 [OK]
multiarch/busybox multiarch ports of ubuntu-debootstrap 2 [OK]
azukiapp/busybox This image is meant to be used as the base... 2 [OK]
...
```
`OFFICIAL` 使 `docker pull` `busybox:latest`
使 `docker pull` `busybox:latest`
```bash
$ docker pull busybox:latest
busybox:latest: The image you are pulling has been verified
e433a6c5b276: Pull complete
e72ac664f4f0: Pull complete
511136ea3c5a: Pull complete
df7546f9f060: Pull complete
latest: Pulling from library/busybox
5c4213be9af9: Pull complete
Digest: sha256:c6b45a95f932202dbb27c31333c4789f45184a744060f6e569cc9d2bf1b9ad6f
Status: Downloaded newer image for busybox:latest
docker.io/library/busybox:latest
```
`busybox` **2.433 MB**
@ -85,22 +70,39 @@ Search for PATTERN in FILEs (or stdin)
```bash
/ # mount
rootfs on / type rootfs (rw)
none on / type aufs (rw,relatime,si=b455817946f8505c)
overlay on / type overlay (rw,relatime,lowerdir=/var/lib/docker/overlay2/l/BOTCI5RF24AMC4A2UWF4N6ZWFP:/var/lib/docker/overlay2/l/TWVP5T5DMKJGXZOROR7CAPWGFP,upperdir=/var/lib/docker/overlay2/801ef0bf6cce35288dbb8fe00a4f9cc47760444693bfdf339ed0bdcf926e12a3/diff,workdir=/var/lib/docker/overlay2/801ef0bf6cce35288dbb8fe00a4f9cc47760444693bfdf339ed0bdcf926e12a3/work)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev type tmpfs (rw,nosuid,mode=755)
shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=65536k)
tmpfs on /dev type tmpfs (rw,nosuid,size=65536k,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=666)
sysfs on /sys type sysfs (ro,nosuid,nodev,noexec,relatime)
/dev/disk/by-uuid/b1f2dba7-d91b-4165-a377-bf1a8bed3f61 on /etc/resolv.conf type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/disk/by-uuid/b1f2dba7-d91b-4165-a377-bf1a8bed3f61 on /etc/hostname type ext4 (rw,relatime,errors=remount-ro,data=ordered)
/dev/disk/by-uuid/b1f2dba7-d91b-4165-a377-bf1a8bed3f61 on /etc/hosts type ext4 (rw,relatime,errors=remount-ro,data=ordered)
devpts on /dev/console type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
proc on /proc/sys type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/sysrq-trigger type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/irq type proc (ro,nosuid,nodev,noexec,relatime)
proc on /proc/bus type proc (ro,nosuid,nodev,noexec,relatime)
tmpfs on /proc/kcore type tmpfs (rw,nosuid,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,relatime,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (ro,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (ro,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/freezer type cgroup (ro,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (ro,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/cpuset type cgroup (ro,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/blkio type cgroup (ro,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (ro,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/memory type cgroup (ro,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (ro,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/pids type cgroup (ro,nosuid,nodev,noexec,relatime,pids)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=65536k)
/dev/vda1 on /etc/resolv.conf type ext3 (rw,noatime,data=ordered)
/dev/vda1 on /etc/hostname type ext3 (rw,noatime,data=ordered)
/dev/vda1 on /etc/hosts type ext3 (rw,noatime,data=ordered)
devpts on /dev/console type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=666)
proc on /proc/bus type proc (ro,relatime)
proc on /proc/fs type proc (ro,relatime)
proc on /proc/irq type proc (ro,relatime)
proc on /proc/sys type proc (ro,relatime)
proc on /proc/sysrq-trigger type proc (ro,relatime)
tmpfs on /proc/acpi type tmpfs (ro,relatime)
tmpfs on /proc/kcore type tmpfs (rw,nosuid,size=65536k,mode=755)
tmpfs on /proc/keys type tmpfs (rw,nosuid,size=65536k,mode=755)
tmpfs on /proc/timer_list type tmpfs (rw,nosuid,size=65536k,mode=755)
tmpfs on /proc/sched_debug type tmpfs (rw,nosuid,size=65536k,mode=755)
tmpfs on /sys/firmware type tmpfs (ro,relatime)
```
`busybox` `Linux` `Linux`

View File

@ -4,53 +4,33 @@
`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 Linux``CentOS`
### 使 CentOS
使 `docker search` `25` `CentOS`
使 `docker run` `CentOS 7` `bash`
```bash
$ docker search -f stars=25 centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official... 2543 [OK]
jdeathe/centos-ssh 27 [OK]
```
使 `docker run` `CentOS` `bash`
```bash
$ docker run -it centos bash
$ docker run -it centos:7 bash
Unable to find image 'centos:latest' locally
latest: Pulling from library/centos
3d8673bd162a: Pull complete
Digest: sha256:a66ffcb73930584413de83311ca11a4cb4938c9b2521d331026dad970c19adf4
Status: Downloaded newer image for centos:latest
[root@43eb3b194d48 /]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
CentOS Linux release 7.9.2009 (Core)
```
## Fedora
![Fedora ](_images/fedora-logo.png)
![Fedora ](./_images/fedora-logo.png)
`Fedora` `Fedora Project` `Linux` `Fedora` `Red Hat` `Red Hat Enterprise Linux`
### 使 Fedora
使 `docker search` `2` `Fedora`
```bash
$ docker search -f stars=2 fedora
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
fedora Official Docker builds of Fedora 433 [OK]
dockingbay/fedora-rust Trusted build of Rust programming language... 3 [OK]
gluster/gluster-fedora Official GlusterFS image [ Fedora 21 + Glu... 3 [OK]
startx/fedora Simple container used for all startx based... 2 [OK]
```
使 `docker run` `Fedora` `bash`
```bash

View File

@ -1,9 +1,10 @@
# Debian/Ubuntu
`Debian` `Ubuntu` **Debian ** `Docker Hub`
## 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`
@ -13,20 +14,7 @@
### 使 Debian
使 `docker search` `Debian`
```bash
$ docker search debian
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
debian Debian is... 1565 [OK]
neurodebian NeuroDebian... 26 [OK]
armbuild/debian port of debian 8 [OK]
...
```
`debian` `neurodebian`
使 `docker run` `Debian`
`debian` `neurodebian` 使 `docker run` `Debian`
```bash
$ docker run -it debian bash
@ -38,31 +26,12 @@ Debian GNU/Linux 8
## Ubuntu
![Ubuntu ](_images/ubuntu-logo.jpg)
![Ubuntu ](./_images/ubuntu-logo.jpg)
`Ubuntu` `GNU/Linux` ubuntu`Ubuntu` `Ubuntu` `Debian` `GNOME/Unity` `Debian` 6 2 **Long Term SupportLTS** 3
### 使 Ubuntu
`Ubuntu` 使 `--filter=stars=10` `10`
```bash
$ docker search --filter=stars=10 ubuntu
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]
```
使
`ubuntu:18.04` 使
使 `-ti` `bash` `ubuntu`
@ -98,12 +67,26 @@ E: Unable to locate package curl
```bash
root@7d93de07bf76:/# 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]
...
Get:1 http://archive.ubuntu.com/ubuntu bionic InRelease [242 kB]
Get:2 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Get:3 http://security.ubuntu.com/ubuntu bionic-security/multiverse amd64 Packages [7348 B]
Get:4 http://security.ubuntu.com/ubuntu bionic-security/universe amd64 Packages [823 kB]
Get:5 http://archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Get:6 http://archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Get:7 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages [11.3 MB]
Get:8 http://security.ubuntu.com/ubuntu bionic-security/restricted amd64 Packages [31.0 kB]
Get:9 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages [835 kB]
Get:10 http://archive.ubuntu.com/ubuntu bionic/restricted amd64 Packages [13.5 kB]
Get:11 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages [1344 kB]
Get:12 http://archive.ubuntu.com/ubuntu bionic/multiverse amd64 Packages [186 kB]
Get:13 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages [1127 kB]
Get:14 http://archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages [1350 kB]
Get:15 http://archive.ubuntu.com/ubuntu bionic-updates/multiverse amd64 Packages [11.4 kB]
Get:16 http://archive.ubuntu.com/ubuntu bionic-updates/restricted amd64 Packages [44.7 kB]
Get:17 http://archive.ubuntu.com/ubuntu bionic-backports/main amd64 Packages [2496 B]
Get:18 http://archive.ubuntu.com/ubuntu bionic-backports/universe amd64 Packages [4252 B]
Fetched 17.6 MB in 1min 25s (207 kB/s)
Reading package lists... Done
```
`curl`
@ -113,13 +96,9 @@ root@7d93de07bf76:/# 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
The following additional packages will be installed:
ca-certificates krb5-locales libasn1-8-heimdal libcurl4 libgssapi-krb5-2 libgssapi3-heimdal libhcrypto4-heimdal libheimbase1-heimdal libheimntlm0-heimdal libhx509-5-heimdal
libk5crypto3 libkeyutils1 libkrb5-26-heimdal libkrb5-3 libkrb5support0 libldap-2.4-2 libldap-common libnghttp2-14 libpsl5 libroken18-heimdal librtmp1 libsasl2-2 libsasl2-modules libsasl2-modules-db libsqlite3-0 libssl1.1 libwind0-heimdal openssl publicsuffix
...
root@7d93de07bf76:/# curl
curl: try 'curl --help' or 'curl --manual' for more information
@ -132,9 +111,8 @@ root@7d93de07bf76:/# 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
The following additional packages will be installed:
apache2-bin apache2-data apache2-utils file libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libexpat1 libgdbm-compat4 libgdbm5 libicu60 liblua5.2-0 libmagic-mgc libmagic1 libperl5.26 libxml2 mime-support netbase perl perl-modules-5.26 ssl-cert xz-utils
...
```
@ -150,7 +128,7 @@ root@7d93de07bf76:/# curl 127.0.0.1
<html xmlns="http://www.w3.org/1999/xhtml">
<!--
Modified from the Debian original for Ubuntu
Last updated: 2014-03-19
Last updated: 2016-11-16
See: https://launchpad.net/bugs/1288690
-->
<head>
@ -169,7 +147,7 @@ root@7d93de07bf76:/# curl 127.0.0.1
* `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://ubuntu.com
* `Ubuntu` https://github.com/ubuntu
* `Ubuntu` https://hub.docker.com/_/ubuntu/
* `Ubuntu` https://github.com/tianon/docker-brew-ubuntu-core

View File

@ -2,4 +2,4 @@
Docker
AWSGoogleAzure Kubernetes [](https://cloud.tencent.com/act/cps/redirect?redirect=10230&cps_key=3a5255852d5db99dcd5da4c72f05df61) 让用户在云上快捷、灵活的部署 Docker 容器
AWSGoogleAzure Kubernetes [](https://cloud.tencent.com/act/cps/redirect?redirect=11588&cps_key=3a5255852d5db99dcd5da4c72f05df61) 让用户在云上享有安全高效的镜像托管、分发等服务

View File

@ -1,10 +1,10 @@
#
![](_images/aliyun-logo.png)
![](./_images/aliyun-logo.png)
[](https://www.aliyun.com?source=5176.11533457&userCode=8lx5zmtu&type=copy) 创立于 2009 年,是中国较早的云计算平台。阿里云致力于提供安全、可靠的计算和数据处理能力。
[](https://www.aliyun.com?source=5176.11533457&userCode=8lx5zmtu&type=copy) 的客户群体中,活跃着微博、知乎、魅族、锤子科技、小咖秀等一大批明星互联网公司。在天猫双 11 全球狂欢节等极富挑战的应用场景中,阿里云保持着良好的运行纪录。
[](https://www.aliyun.com?source=5176.11533457&userCode=8lx5zmtu&type=copy) 的客户群体中,活跃着微博、虎牙、魅族、优酷等一大批明星互联网公司。在天猫双 11 全球狂欢节等极富挑战的应用场景中,阿里云保持着良好的运行纪录。
[ Kubernetes ACK](https://www.aliyun.com/product/kubernetes?source=5176.11533457&userCode=8lx5zmtu&type=copy) 提供了高性能、可伸缩的容器应用管理服务,支持在一组云服务器上通过 Docker 容器来进行应用生命周期管理。容器服务极大简化了用户对容器管理集群的搭建工作,无缝整合了阿里云虚拟化、存储、网络和安全能力。容器服务提供了多种应用发布方式和流水线般的持续交付能力,原生支持微服务架构,助力用户无缝上云和跨云管理。

View File

@ -1,6 +1,6 @@
#
![AWS](_images/aws-logo.jpg)
![AWS](./_images/aws-logo.jpg)
[AWS](https://www.amazonaws.cn),即 Amazon Web Services是亚马逊Amazon公司的 IaaS 和 PaaS 平台服务。AWS 提供了一整套基础设施和应用程序服务使用户几乎能够在云中运行一切应用程序从企业应用程序和大数据项目到社交游戏和移动应用程序。AWS 面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,能够帮助企业降低 IT 投入成本和维护成本。
@ -8,4 +8,4 @@
2015 AWS EC2 (ECS)ECS Docker ECS Docker SwarmKubernetesMesos ECS ECS
![AWS ](_images/ECS.jpg)
![AWS ](./_images/ECS.jpg)

View File

@ -1,11 +1,11 @@
#
![](_images/qcloud-logo.jpg)
![](./_images/qcloud-logo.jpg)
[](https://cloud.tencent.com/redirect.php?redirect=1040&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console) 在架构方面经过多年积累,并且有着多年对海量互联网服务的经验。不管是社交、游戏还是其他领域,都有多年的成熟产品来提供产品服务。腾讯在云端完成重要部署,为开发者及企业提供云服务、云数据、云运营等整体一站式服务方案。
[](https://cloud.tencent.com/act/cps/redirect?redirect=1040&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console) 在架构方面经过多年积累,并且有着多年对海量互联网服务的经验。不管是社交、游戏还是其他领域,都有多年的成熟产品来提供产品服务。腾讯在云端完成重要部署,为开发者及企业提供云服务、云数据、云运营等整体一站式服务方案。
[](https://cloud.tencent.com/redirect.php?redirect=1001&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console)、[云存储](https://cloud.tencent.com/redirect.php?redirect=1020&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console)、[云数据库](https://cloud.tencent.com/redirect.php?redirect=1003&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console)、[视频与CDN](https://cloud.tencent.com/redirect.php?redirect=1019&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console) 和 [域名注册](https://dnspod.cloud.tencent.com) 等基础云服务腾讯云分析MTA、腾讯云推送信鸽等腾讯整体大数据能力以及 QQ互联、QQ 空间、微云、微社区等云端链接社交体系。这些正是腾讯云可以提供给这个行业的差异化优势,造就了可支持各种互联网使用场景的高品质的腾讯云技术平台。
[](https://cloud.tencent.com/act/cps/redirect?redirect=1001&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console)、[云存储](https://cloud.tencent.com/act/cps/redirect?redirect=1020&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console)、[云数据库](https://cloud.tencent.com/act/cps/redirect?redirect=1003&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console)、[视频与CDN](https://cloud.tencent.com/act/cps/redirect?redirect=1019&cps_key=3a5255852d5db99dcd5da4c72f05df61&from=console) 和 [域名注册](https://dnspod.cloud.tencent.com) 等基础云服务腾讯云分析MTA、腾讯云推送信鸽等腾讯整体大数据能力以及 QQ互联、QQ 空间、微云、微社区等云端链接社交体系。这些正是腾讯云可以提供给这个行业的差异化优势,造就了可支持各种互联网使用场景的高品质的腾讯云技术平台。
[ TKE](https://cloud.tencent.com/redirect.php?redirect=10058&cps_key=3a5255852d5db99dcd5da4c72f05df61) 是高度可扩展的高性能容器管理服务,用户可以在托管的云服务器实例集群上轻松运行应用程序。使用该服务,将无需安装、运维、扩展用户的集群管理基础设施,只需进行简单的 API 调用,便可启动和停止 Docker 应用程序,查询集群的完整状态,以及使用各种云服务。用户可以根据用户的资源需求和可用性要求在用户的集群中安排容器的置放,满足业务或应用程序的特定要求。
[ TKE](https://cloud.tencent.com/act/cps/redirect?redirect=10058&cps_key=3a5255852d5db99dcd5da4c72f05df61) 是高度可扩展的高性能容器管理服务,用户可以在托管的云服务器实例集群上轻松运行应用程序。使用该服务,将无需安装、运维、扩展用户的集群管理基础设施,只需进行简单的 API 调用,便可启动和停止 Docker 应用程序,查询集群的完整状态,以及使用各种云服务。用户可以根据用户的资源需求和可用性要求在用户的集群中安排容器的置放,满足业务或应用程序的特定要求。
![](https://mc.qcloudimg.com/static/img/0581dbeb97c869bbe6e62025dbc592d7/image.png)

View File

@ -18,10 +18,6 @@ docker-compose [-f=<arg>...] [options] [COMMAND] [ARGS...]
* `-p, --project-name NAME` 使
* `--x-networking` 使 Docker
* `--x-network-driver DRIVER` `bridge`
* `--verbose`
* `-v, --version` 退

View File

@ -576,3 +576,4 @@ MONGO_VERSION=3.6
##
* [](https://docs.docker.com/compose/compose-file/)
* [awesome-compose](https://github.com/docker/awesome-compose)

View File

@ -3,6 +3,8 @@ services:
db:
image: postgres
environment:
POSTGRES_PASSWORD: 'postgres'
web:
build: .
@ -11,5 +13,3 @@ services:
- .:/code
ports:
- "8000:8000"
links:
- db

View File

@ -35,6 +35,8 @@ services:
db:
image: postgres
environment:
POSTGRES_PASSWORD: 'postgres'
web:
build: .
@ -43,8 +45,6 @@ services:
- .:/code
ports:
- "8000:8000"
links:
- db
```
[`docker-compose.yml` ](compose_file.md)
@ -80,6 +80,7 @@ DATABASES = {
'USER': 'postgres',
'HOST': 'db',
'PORT': 5432,
'PASSWORD': 'postgres',
}
}
```

View File

@ -9,7 +9,7 @@
```bash
$ docker-compose --version
docker-compose version 1.24.1, build 4667896b
docker-compose version 1.27.4, build 40524192
```
Linux 使
@ -21,7 +21,10 @@ Linux 系统请使用以下介绍的方法安装。
Linux 64
```bash
$ sudo curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ sudo curl -L https://github.com/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# 使
$ sudo curl -L https://download.fastgit.org/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
```
@ -42,7 +45,7 @@ $ sudo pip install -U docker-compose
```bash
Collecting docker-compose
Downloading docker-compose-1.24.1.tar.gz (149kB): 149kB downloaded
Downloading docker-compose-1.27.4.tar.gz (149kB): 149kB downloaded
...
Successfully installed docker-compose cached-property requests texttable websocket-client docker-py dockerpty six enum34 backports.ssl-match-hostname ipaddress
```
@ -50,7 +53,7 @@ Successfully installed docker-compose cached-property requests texttable websock
## bash
```bash
$ curl -L https://raw.githubusercontent.com/docker/compose/1.24.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
$ curl -L https://raw.githubusercontent.com/docker/compose/1.27.4/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
```
##

3
compose/lnmp.md Normal file
View File

@ -0,0 +1,3 @@
# 使 compose LNMP
[khs1994](https://github.com/khs1994) 的开源项目 [khs1994-docker/lnmp](https://github.com/khs1994-docker/lnmp) 使用 Docker Compose 搭建了一套 LNMP 环境,各位开发者可以参考该项目在 Docker 或 Kubernetes 中运行 LNMP。

View File

@ -45,8 +45,6 @@ services:
- .:/myapp
ports:
- "3000:3000"
links:
- db
```
使 `docker-compose run`

7
compose/v2.md Normal file
View File

@ -0,0 +1,7 @@
# Compose V2
Docker GO [](https://github.com/docker/compose-cli) 了 Docker Compose并将其作为了 docker cli 的子命令,称为 `Compose V2`。你可以参照官方文档安装,然后将熟悉的 `docker-compose` 命令替换为 `docker compose`,即可使用 Docker Compose。
##
* [Compose V2 beta](https://docs.docker.com/compose/cli-command/)

View File

@ -1,4 +1,5 @@
# Docker
Docker

View File

@ -24,7 +24,7 @@ root@243c32535da7:/#
## `exec`
### -i -t
### `-i` `-t`
`docker exec` `-i` `-t`

View File

@ -3,7 +3,7 @@
使 `docker container rm`
```bash
$ docker container rm trusting_newton
$ docker container rm trusting_newton
trusting_newton
```

View File

@ -1,6 +1,6 @@
#
`stopped`
`exited`
Docker
@ -37,7 +37,7 @@ bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr
`docker run` Docker
*
* [registry](../repository/README.md)
*
*
* 宿
@ -47,7 +47,7 @@ bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr
##
`docker container start`
`docker container start` `exited`
`ps` `top`

View File

@ -9,10 +9,9 @@
`docker container ls -a`
```bash
docker container ls -a
$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ba267838cc1b ubuntu:18.04 "/bin/bash" 30 minutes ago Exited (0) About a minute ago trusting_newton
98e5efa7d997 training/webapp:latest "python app.py" About an hour ago Exited (0) 34 minutes ago backstabbing_pike
```
`docker container start`

View File

@ -1,6 +1,6 @@
# CoreOS
# Fedora CoreOS
`CoreOS`
`CoreOS` Fedora Fedora Atomic Host CoreOS Container Linux
`CoreOS` Linux 使 Linux `yum` `apt`

7
coreos/demo/example.fcc Normal file
View File

@ -0,0 +1,7 @@
variant: fcos
version: 1.0.0
passwd:
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAA...

52
coreos/install.md Normal file
View File

@ -0,0 +1,52 @@
# Fedora CoreOS
## ISO
[](https://getfedora.org/coreos/download/) `Bare Metal & Virtualized` 标签页下载 ISO。
## FCC
FCC Fedora CoreOS Configuration Fedora CoreOS
```yaml
# example.fcc
variant: fcos
version: 1.0.0
passwd:
users:
- name: core
ssh_authorized_keys:
- ssh-rsa AAAA...
```
`ssh-rsa AAAA...` SSH `~/.ssh/id_rsa.pub`
## FCC Ignition
```bash
$ docker run -i --rm quay.io/coreos/fcct:v0.5.0 --pretty --strict < example.fcc > example.ign
```
## ISO
> 3GB
```bash
$ sudo coreos-installer install /dev/sda --ignition-file example.ign
```
使
## 使
```bash
$ ssh core@IP
$ docker --version
```
##
* [](https://docs.fedoraproject.org/en-US/fedora-coreos/bare-metal/)

View File

@ -1,31 +1,28 @@
# CoreOS
# Fedora CoreOS
[CoreOS](https://coreos.com/) 对 Docker 甚至容器技术的发展都带来了巨大的推动作用。其提供了运行现代基础设施的特性,支持大规模服务部署,使得在基于最小化的现代操作系统上构建规模化的计算仓库成为了可能
[Fedora CoreOS](https://getfedora.org/coreos/) 是一个自动更新的,最小的,整体的,以容器为中心的操作系统,不仅适用于集群,而且可独立运行,并针对运行 Kubernetes 进行了优化。它旨在结合 CoreOS Container Linux 和 Fedora Atomic Host 的优点,将 Container Linux 中的 [Ignition](https://github.com/coreos/ignition) 与 [rpm-ostree](https://github.com/coreos/rpm-ostree) 和 Project Atomic 中的 SELinux 强化等技术相集成。其目标是提供最佳的容器主机,以安全,大规模地运行容器化的工作负载
# CoreOS
## FCOS
##
###
CoreOS Linux 40% RAM 114M PXE iPXE
FCOS Linux 40% RAM 114M PXE iPXE
##
###
OS使使
Ignition JSON FCOS systemd
## Docker
Ignition initramfs Ignition systemd systemd
Docker CoreOS
###
##
FCOS 使 rpm-ostree yum rpm-ostree OS OS 使
CoreOS
###
k8s 使
FCOS **Docker CLI****podman CLI** **skopeo CLI** 使 **crictl CLI** CRI-O
##
##
##
* [](https://docs.fedoraproject.org/en-US/fedora-coreos/)
* [openshift ](https://docs.openshift.com/container-platform/4.3/architecture/architecture-rhcos.html)

View File

@ -1,13 +0,0 @@
# CoreOS
`CoreOS` `服务发现``容器管理`
##
`CoreOS` 使 `etcd` `CoreOS` `etcd` `rkt`
`etcd` 使 [etcd ](../etcd/)
##
`Docker``CoreOS` `Docker`使

View File

@ -1,6 +1,6 @@
# Docker
![](_images/types-of-mounts.png)
![](./_images/types-of-mounts.png)
Docker

View File

@ -7,29 +7,27 @@
```bash
$ docker run -d -P \
--name web \
# -v /src/webapp:/opt/webapp \
--mount type=bind,source=/src/webapp,target=/opt/webapp \
training/webapp \
python app.py
# -v /src/webapp:/usr/share/nginx/html \
--mount type=bind,source=/src/webapp,target=/usr/share/nginx/html \
nginx:alpine
```
`/src/webapp` `/opt/webapp`便使 `-v` Docker 使 `--mount` Docker
`/src/webapp` `/usr/share/nginx/html`便使 `-v` Docker 使 `--mount` Docker
Docker `读写` `readonly` `只读`
```bash
$ docker run -d -P \
--name web \
# -v /src/webapp:/opt/webapp:ro \
--mount type=bind,source=/src/webapp,target=/opt/webapp,readonly \
training/webapp \
python app.py
# -v /src/webapp:/usr/share/nginx/html:ro \
--mount type=bind,source=/src/webapp,target=/usr/share/nginx/html,readonly \
nginx:alpine
```
`readonly` `只读` `/opt/webapp`
`readonly` `只读` `/usr/share/nginx/html`
```bash
/opt/webapp # touch new.txt
/usr/share/nginx/html # touch new.txt
touch: new.txt: Read-only file system
```
@ -48,7 +46,7 @@ $ docker inspect web
{
"Type": "bind",
"Source": "/src/webapp",
"Destination": "/opt/webapp",
"Destination": "/usr/share/nginx/html",
"Mode": "",
"RW": true,
"Propagation": "rprivate"

View File

@ -1,6 +1,6 @@
#
`数据卷` 使 UFS
`数据卷` 使 UnionFS
* `数据卷`
@ -10,7 +10,7 @@
* `数据卷` 使
>`数据卷` 使 Linux mount `数据卷`
>`数据卷` 使 Linux mount
##
@ -23,6 +23,7 @@ $ docker volume create my-vol
```bash
$ docker volume ls
DRIVER VOLUME NAME
local my-vol
```
@ -46,15 +47,14 @@ $ docker volume inspect my-vol
`docker run` 使 `--mount` `数据卷` `docker run` `数据卷`
`web` `数据卷` `/webapp`
`web` `数据卷` `/usr/share/nginx/html`
```bash
$ docker run -d -P \
--name web \
# -v my-vol:/wepapp \
--mount source=my-vol,target=/webapp \
training/webapp \
python app.py
# -v my-vol:/usr/share/nginx/html \
--mount source=my-vol,target=/usr/share/nginx/html \
nginx:alpine
```
##
@ -73,7 +73,7 @@ $ docker inspect web
"Type": "volume",
"Name": "my-vol",
"Source": "/var/lib/docker/volumes/my-vol/_data",
"Destination": "/app",
"Destination": "/usr/share/nginx/html",
"Driver": "local",
"Mode": "",
"RW": true,

View File

@ -2,30 +2,31 @@ version: "3"
services:
# $ docker-compose up server => up a serverOnly Support Linux or macOS
server:
image: yeasy/docker_practice:latest
ports:
- 4000:4000
volumes:
- ./:/srv/gitbook-src
command: server
# $ docker-compose up build => build gitbook
build:
gitbook-build:
&gitbook-build
image: yeasy/docker_practice:latest
volumes:
- ./:/srv/gitbook-src
command: build
# $ docker run -it --rm -p 4000:80 dockerpracticesig/docker_practice
offline:
# this image build by travis ci
image: dockerpracticesig/docker_practice
gitbook-server:
<< : *gitbook-build
ports:
- 4000:4000
command: server
# docker run -it --rm -p 4000:80 dockerpracticesig/docker_practice
gitbook-offline:
&gitbook-offline
# this image build by GitHub Action
image: dockerpracticesig/docker_practice:gitbook
ports:
- 4000:80
vuepress-offline:
<< : *gitbook-offline
image: dockerpracticesig/docker_practice:vuepress
# developer test docker image
development:

View File

@ -12,6 +12,10 @@
```bash
$ curl -L https://github.com/etcd-io/etcd/releases/download/v3.4.0/etcd-v3.4.0-linux-amd64.tar.gz -o etcd-v3.4.0-linux-amd64.tar.gz
# 使
$ curl -L https://download.fastgit.org/etcd-io/etcd/releases/download/v3.4.0/etcd-v3.4.0-linux-amd64.tar.gz -o etcd-v3.4.0-linux-amd64.tar.gz
$ tar xzvf etcd-v3.4.0-linux-amd64.tar.gz
$ cd etcd-v3.4.0-linux-amd64
```

View File

@ -1,6 +1,6 @@
# etcd
![](_images/etcd_logo.png)
![](./_images/etcd_logo.png)
`etcd` `CoreOS` 2013 6 `key-value` `Go` `CoreOS` `etcd`

View File

@ -40,7 +40,7 @@ FROM scratch
`scratch`
[`swarm`](https://hub.docker.com/_/swarm/)、[`etcd`](https://quay.io/repository/coreos/etcd)。对于 Linux 下静态编译的程序来说,并不需要有操作系统提供运行时支持,所需的一切库都已经在可执行文件里了,因此直接 `FROM scratch` 会让镜像体积更加小巧。使用 [Go 语言](https://golang.org/) 开发的应用很多会使用这种方式来制作镜像,这也是为什么有人认为 Go 是特别适合容器微服务架构的语言的原因之一。
Linux `FROM scratch` 使 [Go ](https://golang.google.cn/) 开发的应用很多会使用这种方式来制作镜像,这也是有人认为 Go 是特别适合容器微服务架构的语言的原因之一。
## RUN
@ -80,7 +80,7 @@ RUN make -C /usr/src/redis install
```docker
FROM debian:stretch
RUN buildDeps='gcc libc6-dev make wget' \
RUN set -x; buildDeps='gcc libc6-dev make wget' \
&& apt-get update \
&& apt-get install -y $buildDeps \
&& wget -O redis.tar.gz "http://download.redis.io/releases/redis-5.0.3.tar.gz" \
@ -94,7 +94,7 @@ RUN buildDeps='gcc libc6-dev make wget' \
&& apt-get purge -y --auto-remove $buildDeps
```
redis 使 `RUN` 使 `RUN` 使 `&&` 7 1 Dockerfile Shell
redis 使 `RUN` 使 `RUN` 使 `&&` 7 1 Dockerfile Shell
Dockerfile Shell `\` `#`
@ -177,17 +177,23 @@ Sending build context to Docker daemon 2.048 kB
`docker build` URL Git repo
```bash
$ docker build https://github.com/twang2218/gitlab-ce-zh.git#:11.1
# $env:DOCKER_BUILDKIT=0
# export DOCKER_BUILDKIT=0
Sending build context to Docker daemon 2.048 kB
Step 1 : FROM gitlab/gitlab-ce:11.1.0-ce.0
11.1.0-ce.0: Pulling from gitlab/gitlab-ce
aed15891ba52: Already exists
773ae8583d14: Already exists
...
$ docker build -t hello-world https://github.com/docker-library/hello-world.git#master:amd64/hello-world
Step 1/3 : FROM scratch
--->
Step 2/3 : COPY hello /
---> ac779757d46e
Step 3/3 : CMD ["/hello"]
---> Running in d2a513a760ed
Removing intermediate container d2a513a760ed
---> 038ad4142d2b
Successfully built 038ad4142d2b
```
Git repo `master` `/11.1/` Docker `git clone`
Git repo `master` `/amd64/hello-world/` Docker `git clone`
### tar

View File

@ -16,11 +16,11 @@ $ docker run --name webserver -d -p 80:80 nginx
`nginx` `webserver` 80 访 `nginx`
Linux Docker使 Docker Desktop for Mac/Windows访<http://localhost>;如果使用的是 Docker Toolbox或者是在虚拟机、云服务器上安装的 Docker则需要将 `localhost` 换为虚拟机地址或者实际云服务器地址。
Docker访`http://localhost` Docker `localhost`
访 Nginx
![](_images/images-mac-example-nginx.png)
![](./_images/images-mac-example-nginx.png)
Docker 使 `docker exec`
@ -37,7 +37,7 @@ exit
![](_images/images-create-nginx-docker.png)
![](./_images/images-create-nginx-docker.png)
`docker diff`
@ -91,7 +91,8 @@ $ docker image ls nginx
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx v2 07e334659748 9 seconds ago 181.5 MB
nginx 1.11 05a60462f8ba 12 days ago 181.5 MB
nginx latest e43d811ce2f4 4 weeks ago 181.5 MB```
nginx latest e43d811ce2f4 4 weeks ago 181.5 MB
```
`docker history` `nginx:latest`
@ -115,7 +116,7 @@ e43d811ce2f4 4 weeks ago /bin/sh -c #(nop) CMD ["nginx" "-g" "da
docker run --name web2 -d -p 81:80 nginx:v2
```
`web2` `81` Docker Desktop for Mac/Windows Linux 访 <http://localhost:81> 看到结果,其内容应该和之前修改后的 `webserver` 一样。
`web2` `81` 访 `http://localhost:81` `webserver`
使 `docker commit`
@ -123,7 +124,7 @@ docker run --name web2 -d -p 81:80 nginx:v2
使 `docker commit` 使
`docker diff webserver` `/usr/share/nginx/html/index.html`
`docker diff webserver` `/usr/share/nginx/html/index.html`
使 `docker commit` ****使

View File

@ -4,7 +4,7 @@ WORKDIR /app
COPY package.json /app/
RUN npm i --registry=https://registry.npm.taobao.org \
RUN npm i --registry=https://registry.npmmirror.com \
&& rm -rf ~/.npm
COPY src /app/src

View File

@ -8,7 +8,7 @@ COPY package.json /app/
RUN --mount=type=cache,target=/app/node_modules,id=my_app_npm_module,sharing=locked \
--mount=type=cache,target=/root/.npm,id=npm_cache \
npm i --registry=https://registry.npm.taobao.org
npm i --registry=https://registry.npmmirror.com
COPY src /app/src

View File

@ -1,4 +1,4 @@
FROM golang:1.9-alpine as builder
FROM golang:alpine as builder
RUN apk --no-cache add git

View File

@ -1,4 +1,4 @@
FROM golang:1.9-alpine
FROM golang:alpine
RUN apk --no-cache add git

View File

@ -1,4 +1,4 @@
FROM golang:1.9-alpine
FROM golang:alpine
RUN apk --no-cache add git ca-certificates

View File

@ -1,4 +1,4 @@
### ADD
# ADD
`ADD` `COPY` `COPY`

View File

@ -1,4 +1,4 @@
### ARG
# ARG
`ARG <参数名>[=<默认值>]`
@ -6,4 +6,63 @@
`Dockerfile` `ARG` `docker build` `--build-arg <参数名>=<值>`
1.13 `--build-arg` `Dockerfile` `ARG` `--build-arg` `Dockerfile` 使使退 1.13 退使 CI `Dockerfile` Dockerfile
使 `ARG` Dockerfile
ARG `FROM` `FROM`
```docker
ARG DOCKER_USERNAME=library
FROM ${DOCKER_USERNAME}/alpine
RUN set -x ; echo ${DOCKER_USERNAME}
```
使 Dockerfile `${DOCKER_USERNAME}` `FROM` `ARG`
```docker
# FROM
ARG DOCKER_USERNAME=library
FROM ${DOCKER_USERNAME}/alpine
# FROM 使
ARG DOCKER_USERNAME=library
RUN set -x ; echo ${DOCKER_USERNAME}
```
```docker
# FROM
ARG DOCKER_USERNAME=library
FROM ${DOCKER_USERNAME}/alpine
RUN set -x ; echo 1
FROM ${DOCKER_USERNAME}/alpine
RUN set -x ; echo 2
```
Dockerfile `FROM` 使 `${DOCKER_USERNAME}`使
```docker
ARG DOCKER_USERNAME=library
FROM ${DOCKER_USERNAME}/alpine
# FROM 使
ARG DOCKER_USERNAME=library
RUN set -x ; echo ${DOCKER_USERNAME}
FROM ${DOCKER_USERNAME}/alpine
# FROM 使
ARG DOCKER_USERNAME=library
RUN set -x ; echo ${DOCKER_USERNAME}
```

View File

@ -1,4 +1,4 @@
### CMD
# CMD
`CMD` `RUN`
@ -40,7 +40,7 @@ CMD service nginx start
退退西
使 `service nginx start` upstart `nginx` `CMD service nginx start` `CMD [ "sh", "-c", "service nginx start"]` `sh` `service nginx start` `sh` `sh` 退退
使 `service nginx start` init nginx `CMD service nginx start` `CMD [ "sh", "-c", "service nginx start"]` `sh` `service nginx start` `sh` `sh` 退退
`nginx`

View File

@ -1,4 +1,4 @@
### COPY
# COPY
@ -32,3 +32,5 @@ COPY --chown=bin files* /mydir/
COPY --chown=1 files* /mydir/
COPY --chown=10:11 files* /mydir/
```

View File

@ -1,4 +1,4 @@
### ENTRYPOINT
# ENTRYPOINT
`ENTRYPOINT` `RUN` `exec` `shell`
@ -21,7 +21,7 @@ FROM ubuntu:18.04
RUN apt-get update \
&& apt-get install -y curl \
&& rm -rf /var/lib/apt/lists/*
CMD [ "curl", "-s", "https://ip.cn" ]
CMD [ "curl", "-s", "http://myip.ipip.net" ]
```
使 `docker build -t myip .` IP
@ -38,12 +38,12 @@ $ docker run myip -i
docker: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting container process caused \"exec: \\\"-i\\\": executable file not found in $PATH\"\n".
```
`executable file not found` `command` `CMD` `-i` `CMD` `curl -s https://ip.cn` `-i`
`executable file not found` `command` `CMD` `-i` `CMD` `curl -s http://myip.ipip.net` `-i`
`-i`
```bash
$ docker run myip curl -s https://ip.cn -i
$ docker run myip curl -s http://myip.ipip.net -i
```
使 `ENTRYPOINT` `ENTRYPOINT`
@ -53,7 +53,7 @@ FROM ubuntu:18.04
RUN apt-get update \
&& apt-get install -y curl \
&& rm -rf /var/lib/apt/lists/*
ENTRYPOINT [ "curl", "-s", "https://ip.cn" ]
ENTRYPOINT [ "curl", "-s", "http://myip.ipip.net" ]
```
使 `docker run myip -i`
@ -109,8 +109,8 @@ CMD [ "redis-server" ]
...
# allow the container to be started with `--user`
if [ "$1" = 'redis-server' -a "$(id -u)" = '0' ]; then
chown -R redis .
exec su-exec redis "$0" "$@"
find . \! -user redis -exec chown redis '{}' +
exec gosu redis "$0" "$@"
fi
exec "$@"

View File

@ -1,4 +1,4 @@
### ENV
# ENV
@ -7,7 +7,7 @@
`RUN`使
```Dockerfie
```docker
ENV VERSION=1.0 DEBUG=on \
NAME="Happy Feet"
```

View File

@ -1,7 +1,7 @@
### EXPOSE
# EXPOSE
`EXPOSE <端口1> [<端口2>...]`
`EXPOSE` Dockerfile 使便使 `docker run -P` `EXPOSE`
`EXPOSE` Dockerfile 使便使 `docker run -P` `EXPOSE`
`EXPOSE` 使 `-p <宿主端口>:<容器端口>` `-p`宿访 `EXPOSE` 使宿

View File

@ -1,4 +1,4 @@
### HEALTHCHECK
# HEALTHCHECK

17
image/dockerfile/label.md Normal file
View File

@ -0,0 +1,17 @@
# LABEL
`LABEL` metadata
```docker
LABEL <key>=<value> <key>=<value> <key>=<value> ...
```
```docker
LABEL org.opencontainers.image.authors="yeasy"
LABEL org.opencontainers.image.documentation="https://yeasy.gitbooks.io"
```
https://github.com/opencontainers/image-spec/blob/master/annotations.md

View File

@ -1,4 +1,4 @@
### ONBUILD
# ONBUILD
`ONBUILD <其它指令>`

View File

@ -1,6 +1,6 @@
###
#
* `Dockerfie` https://docs.docker.com/engine/reference/builder/
* `Dockerfile` https://docs.docker.com/engine/reference/builder/
* `Dockerfile` https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

33
image/dockerfile/shell.md Normal file
View File

@ -0,0 +1,33 @@
# SHELL
`SHELL ["executable", "parameters"]`
`SHELL` `RUN` `ENTRYPOINT` `CMD` shellLinux `["/bin/sh", "-c"]`
```docker
SHELL ["/bin/sh", "-c"]
RUN lll ; ls
SHELL ["/bin/sh", "-cex"]
RUN lll ; ls
```
`RUN` `RUN` 退
`ENTRYPOINT` `CMD` shell `SHELL` shell shell
```docker
SHELL ["/bin/sh", "-cex"]
# /bin/sh -cex "nginx"
ENTRYPOINT nginx
```
```docker
SHELL ["/bin/sh", "-cex"]
# /bin/sh -cex "nginx"
CMD nginx
```

Some files were not shown because too many files have changed in this diff Show More