核心组件
- docker -client
- docker -daemon
- docker -image
- registry(仓库)
- docker -container(运行的程序)
参考文档(官方)
安装文档:docker-docs-install
docker-daemon配置文档:[docker-docs-config](https://docs.docker.com/config/da
emon/systemd/)
docker-registry文档:docker-registry
Config部分
- 修改image本地位置
修改/etc/docker/daemon.json(注意该json需符合json规范,否则docker服务将启动错误)
--参数data-root:具体位置
--参数storage-driver:存储方式(具体会在下面展开) - 代理,中心仓库地址修改
因为linux下docker服务是以systemctl方式启动 可以修改启动参数
具体配置文件夹位置:/etc/systemd/system/docker.service.d
http代理
创建/etc/systemd/system/docker.service.d/http-proxy.conf文件可添加http代理
具体配置如下
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/"
https代理
创建/etc/systemd/system/docker.service.d/https-proxy.conf文件可添加https代理
[Service]
Environment="HTTPS_PROXY=https://proxy.example.com:443/"
可设置代理过滤NO_PROXY
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/" "NO_PROXY=localhost,127.0.0.1,docker-registry.example.com,.corp"
类似linux系统代理设置
修改完后执行systemctl daemon-reload
docker-container结构
该结构的存在使的kernel能够得以复用,从而降低了容器的成本
基础指令
由于底层是只读的,只有容器层是可定制的,所以我们的程序都是泡在最上层的
- docker commit (提交修改)
- docker pull (拉去image)
- docker push (推送更改)
- docker run (启动容器)
- docker stats (监控容器)
- docker history (显示提交历史)
- docker build (构建镜像生成image)
- docker images (镜像列表)
- docker attach (也可进入容器内部,不启动新进程)
- docker exec (进入容器内部可指定shell,启动新进程)
- docker stop (停止运行的容器)
- docker start(启动暂停的容器)
- docker pause(暂停容器,不占用cpu)
- docker unpause(重启容器)
docker run需特别讲解下
参数:
-d 后台启动
-p 端口映射
-v volumn映射(存储映射)
-it 交互模式进入容器
-m 设置内存上限
--memory-swap 内存swap上限
-c cpu权重(默认1024)
--blkio-weight 改变IO优先级
cggroup(对容器占用资源的控制组)
/sys/fs/cggroup/cpu/docker/containerid
--network 指定网卡none,host使用主机网络