docker笔记

注意事项

docker会创建相应的iptables策略,有时会反过来受iptables影响,建议关闭firewall和iptables,直接使用云安全组或者硬件防火墙。

1 docker安装

1.1 离线安装

下载 Docker 二进制文件(https://download.docker.com/linux/static/stable/x86_64/)。由不可抗力的缘故,可以改从清华源下载(https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/),速度也更快。

tar zxf docker-xxxx-ce.tgz
cp docker/* /usr/local/bin/
dockerd &

验证

docker info

注册成服务

vi /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=/usr/local/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target

重载服务配置

systemctl daemon-reload

1.2 在线安装

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl start docker

2 docker常用命令

2.1 下载镜像

docker search xxx
docker pull xxx

2.2 使用镜像

打包镜像

进入项目目录

docker build -t XXX:1.0 .

保存镜像

将容器保存为镜像

docker commit <容器id> <镜像名>:<tag>

将镜像保存为文件

docker save -o XXX.tar XXX:1.0

2.3 使用镜像

导入镜像

docker load -i XXX.tar

运行容器

-d 后台运行 -v 目录映射(宿主机:容器) -p 端口映射(宿主机:容器)-e 设置环境变量 --privileged=true特权运行:

docker run --name xxxx -v /var/log/xxx.log:/api/log/xxx.log -e xxxx="xxxx" -e --privileged=true -p 1000:1000 -d xxx:1.0 

注意,通过-v进行文件映射,必须宿主机内存在对应文件,否则默认为目录映射,会创建相应空目录
某些情况下需要在镜像中增加host:

--add-host='www.xxxxxx.com:127.0.0.1'

某些情况下需要给镜像单独配置DNS,例如宿主机使用内部DNS:

--dns=192.168.102.1

进入容器

docker exec -it xxxx /bin/sh

2.4 制作镜像(以python3环境为例)

# 拉取镜像 
 docker pull alpine:latest
# 创建一个名为alpine的容器
docker run -itd --name alpine alpine:latest /bin/sh
# 进入alpine容器
docker exec -it alpine /bin/sh

容器内操作

# 更改软件源(此处以3.12为例)
vi /etc/apk/repositories
http://mirrors.aliyun.com/alpine/v3.12/main/
http://mirrors.aliyun.com/alpine/v3.12/community/
# 更新软件源
apk update
# 安装python3
apk add python3
# 安装pip3
apk add py3-pip

卷操作

创建卷:

docker volume create data

默认情况下,卷会保存在 /var/lib/docker/volumes/ 目录下
如果想要修改卷的默认位置,则需要修改/etc/docker/daemon.json文件:

{
    "data-root": "/new/path/to/docker/volumes"
}

查看卷

# 列出卷
docker volume ls
# 查看卷详情
docker volume inspect data

删除卷

# 删除卷
docker volume rm data
# 清理未使用的卷
docker volume prune

3 Registry常用命令

3.1 部署

拉取镜像

docker pull registry

启动

docker run --name registry -d -p 5000:5000 -v /home/registry:/var/lib/registry registry:latest

3.2 上传镜像

标记

docker tag alpine:latest localhost:5000/alpine:v1.0

上传

docker push localhost:5000/alpine:v1.0

3.3 查看镜像

查看镜像名称

curl -X GET http://localhost:5000/v2/_catalog

查看镜像标记

curl -X GET http://localhost:5000/v2/alpine/tags/list

3.4 下载镜像

本地下载

docker pull localhost:5000/alpine:v1.0

远程下载

错误信息 http: server gave HTTP response to HTTPS client
新增文件 /etc/docker/daemon.json

{
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ],
  "insecure-registries": [
    "192.168.199.100:5000"
  ]
}

重启docker服务
重新拉取

docker pull 192.168.145.135:5000/alpine:v1.0

3.5 删除镜像

通过API只能删除tag,并不会删除镜像,直接删除文件更简单。
进入容器,清空/var/lib/registry/docker/registry/v2/repositories/目录,或者删除映射的本地目录
垃圾回和重启容器

docker exec registry bin/registry garbage-collect /etc/docker/registry/config.yml
docker restart registry

3.6 图形界面

4 小技巧

4.1 日志清理

手工清理

容器日志的默认位置在/var/lib/docker/containers/$CONTAINER_ID/$CONTAINER_ID-json.log
其中$CONTAINER_ID代表容器的唯一标识符,可以通过docker inspect xxx中的id查看

自动清理

修改/etc/docker/daemon.json文件

{
  "registry-mirrors": ["http://hub-mirror.c.163.com"],
  "log-driver":"json-file",
  "log-opts": {"max-size":"1024m", "max-file":"3"}
}

重启docker之后,对新建容器生效

### 回答1: 要下载Docker笔记,首先需要了解Docker是什么以及其使用场景。 Docker是一种开源的容器化平台,可以帮助用户打包、部署和运行应用程序。通过使用容器化技术,用户无需担心运行环境的差异,可以将应用程序和其依赖项打包到一个可移植的容器中,随时在不同的环境中运行。 要下载Docker笔记,可以按照以下几个步骤进行操作: 1. 首先,需要在计算机上安装Docker。可以从Docker官方网站(https://www.docker.com/)上下载适合自己操作系统的Docker安装包,并按照安装指南进行安装。 2. 安装完成后,需要启动Docker服务。根据操作系统的不同,可以在启动菜单或终端中找到Docker应用程序,并点击打开。在Docker控制台中,可以查看、管理容器以及进行其他操作。 3. 接下来,需要搜索并下载Docker笔记的镜像。可以使用Docker Hub(https://hub.docker.com/)这个官方的镜像仓库,搜索关键词以找到合适的笔记镜像。在搜索结果中,会显示镜像的名称、描述、标签等信息,选择一个合适的镜像。 4. 找到想要下载的笔记镜像后,可以使用Docker命令行工具或Docker控制台中的图形界面来下载镜像。通过输入命令`docker pull 镜像名称:标签`,即可下载对应的笔记镜像到本地。 5. 下载完成后,可以使用`docker images`命令在本地查看已下载的镜像列表。根据下载的笔记镜像的名称和标签,可以使用`docker run`命令来创建并启动一个容器,从而运行笔记。 通过以上步骤,就可以成功下载Docker笔记并在本地运行。希望这些信息对您有帮助! ### 回答2: 要下载Docker笔记,首先需要知道从哪里获取这些笔记Docker有一个官方文档网站,其中包含了大量关于Docker的技术文档、教程和示例以及各种使用场景的说明。用户可以访问Docker官方网站,在文档部分进行浏览和搜索,找到所需的笔记。 在Docker官方文档网站上,用户可以按照主题、标签或关键字进行检索,以找到相关的笔记。网站还提供了各种文件格式的下载选项,包括PDF、EPUB和HTML版本,用户可以根据自己的使用习惯选择适合的格式进行下载。 此外,还有一些第三方资源库和网站提供了Docker相关的笔记下载。例如GitHub上有很多开源项目,其中包含了Docker的使用笔记和示例代码。用户可以通过在GitHub上搜索关键字"Docker笔记"或"Docker notes"来找到相关的项目,然后根据项目的说明进行下载。 总之,下载Docker笔记可以通过Docker官方文档网站或第三方资源库进行。用户可以根据自己的需求和偏好选择下载适合自己的格式和来源。 ### 回答3: 要下载 Docker 笔记,首先需要确保已经安装了 Docker 客户端工具。然后按照以下步骤进行下载: 1. 打开终端或命令提示符,输入以下命令来下载 Docker 笔记Docker 镜像: ``` docker pull [镜像名称] ``` 这里的 `[镜像名称]` 是 Docker Hub 上提供的 Docker 镜像名称,可以根据需要搜索并选择合适的镜像。 2. 等待镜像下载完成后,使用以下命令来创建和运行一个 Docker 容器,并将笔记下载到本地: ``` docker run -it --name [容器名称] [镜像名称] [下载命令] ``` 这里的 `[容器名称]` 是用于标识容器的名称,`[下载命令]` 是具体的下载命令,可以根据下载方式的不同进行相应的设置。 3. 等待下载完成后,可以使用以下命令来停止并删除容器: ``` docker stop [容器名称] docker rm [容器名称] ``` 这里的 `[容器名称]` 是之前创建容器时指定的名称。 通过以上步骤,你就可以成功下载 Docker 笔记到本地了。记得根据实际需求选择适合的 Docker 镜像和下载命令,同时也可以通过 Docker Hub 上的文档和社区提供的资源,了解更多有关 Docker 的使用方法和技巧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值