Docker 安装(Install Docker Engine from binaries)

该文详细介绍了如何下载Docker的二进制包,通过解压并移动到/usr/bin/目录下进行安装。接着,配置systemd服务文件docker.service,并创建daemon.json来设定数据存储位置和镜像源。最后,启动Docker服务并设置为开机自启。在遇到配置文件变更导致的启动问题时,需执行sudosystemctldaemon-reload来刷新配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

使用二进制包方式安装docker 。


一、下载文件

下载地址:

https://download.docker.com/linux/static/stable/

我下载的是 docker-20.10.8.tgz

二、解压

当前账号已经有 root 权限

tar  -zxvf   docker-20.10.8.tgz

复制到 /usr/bin/

 mv   docker/*    /usr/bin/

配置 systemd 启动(Configure the daemon with systemd)

docker.service

创建文件

/etc/systemd/system/docker.service

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target docker.socket firewalld.service containerd.service time-set.target
Wants=network-online.target containerd.service
# Requires=docker.socket    可以不使用

[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutStartSec=0
RestartSec=2
Restart=always

# Note that StartLimit* options were moved from "Service" to "Unit" in systemd 229.
# Both the old, and new location are accepted by systemd 229 and up, so using the old location
# to make them work for either version of systemd.
StartLimitBurst=3

# Note that StartLimitInterval was renamed to StartLimitIntervalSec in systemd 230.
# Both the old, and new name are accepted by systemd 230 and up, so using the old name to make
# this option work for either version of systemd.
StartLimitInterval=60s

# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity

# Comment TasksMax if your systemd version does not support it.
# Only systemd 226 and above support this option.
# TasksMax=infinity

# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes

# kill only the docker process, not all processes in the cgroup
# KillMode=process
# OOMScoreAdjust=-500

[Install]
WantedBy=multi-user.target

daemon.json

创建镜像地址

mkdir   /home/docker

创建
/etc/docker/daemon.json

data-root 镜像地址
registry-mirrors 镜像源

{
  "data-root": "/home/docker",
  "registry-mirrors": ["https://改成自己.mirror.aliyuncs.com"]
}

启动

sudo systemctl start docker

系统启动自运行

sudo systemctl enable docker.service

总结

如果修改配置文件后启动报错,

Warning: The unit file, source configuration file or drop-ins of docker.service changed on disk. Run 'systemctl daemon-reload' to reload units.

解决方式:
先运行

sudo systemctl daemon-reload
### 在 Windows Server 2016 上安装 Docker #### 准备工作 为了确保顺利安装 Docker,在开始之前需确认服务器满足最低硬件需求以及已启用必要的功能。具体来说,Hyper-V 和 Containers 功能必须被激活[^1]。 #### 启用 Hyper-V 和 Containers 特性 通过 PowerShell 使用管理员权限运行以下命令来启动所需特性: ```powershell Install-WindowsFeature -name containers, hyper-v -IncludeManagementTools Restart-Computer –Force ``` 此操作会重启计算机以应用更改。 #### 设置容器网络适配器 创建默认的 NAT 网络供容器通信使用: ```powershell New-InternalIPInterfaceAddressPrefix "192.168.0.0/24" ``` 这一步骤对于构建内部测试环境非常重要[^2]。 #### 下载并安装 Docker Engine 访问 [Docker 官方网站](https://docs.docker.com/engine/install/binaries/) 获取最新版本二进制文件,并按照说明完成安装过程。另一种方法是在PowerShell中执行如下指令自动获取稳定版Docker引擎: ```powershell Invoke-WebRequest "https://master.dockerproject.org/windows/static/stable/x86_64/docker.zip" -OutFile "$env:TEMP\docker.zip" Expand-Archive -Path "$env:TEMP\docker.zip" -DestinationPath $env:ProgramFiles Set-Service docker -StartupType Automatic Start-Service docker ``` 上述脚本将下载最新的 Docker CE 并解压到程序目录下,同时设置服务开机自启。 #### 验证安装成功与否 最后可以尝试拉取一个简单的镜像验证整个流程是否正常运作: ```powershell docker pull mcr.microsoft.com/windows/nanoserver:ltsc2019 docker run hello-world ``` 如果一切顺利,则表示 Docker 已经可以在 Windows Server 2016 中正常使用了[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值