提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
目的:安装docker:
随着服务器部署的服务越来越多,为了方便管理。
提示:以下是本篇文章正文内容,下面案例可供参考
一、Docker是什么?
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
二、离线安装步骤
1.下载地址
地址如下:
https://download.docker.com/linux/static/stable/x86_64/
2.安装Docker
代码如下(示例):
1.解压安装包
tar -zxvf docker.**.tgz
2.将文件移动到/usr/bin/文件夹下
cp ../docker/* /usr/bin/
3.在/etc/systemd/system/创建docker.service(文件内容见2.1)
cd /etc/systemd/system
touch docker.service
vi docker.service
.... (见下面)
4.赋文件权限和启动docker
chmod +x docker.service # 添加文件权限
systemctl daemon-reload # 重载unit配置文件
systemctl start docker # 启动docker
systemctl enable docker.service #设置开机自启
(
设置开机自启出错:Failed to execute operation: File exists
解决部分:find / -name docker.service
rm 删除除自己添加外相同名称的配置文件
)
2.1 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
# 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
# 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
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# 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
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
3. 扩展
systemctl start docker # 启动docker
systemctl stop docker # 停止docker
systemctl restart docker # 重启docker
systemctl status docker # 查看docker状态
sytemctl enable docker # 开机自启docker
docker pull 镜像名称【:TAG】 # 拉取在线镜像 【:TAG】 镜像版本号(默认latest)
docker system df # 查询镜像、容器、数据卷所占空间
docker info # 查看docker概要信息
docker search 镜像名称 # 根据镜像名称查询镜像
docker images # 查看镜像
docker rmi -f 镜像id # 删除镜像
docker rmi -f $(docker images -qa) # 删除全部镜像
docker save java:9 -o java-9.jar # 将镜像导出成jar包
docker load -i java-9.jar # 将jar导入镜像文件
docker ps # 查看启动容器
docker ps -a # 查看所有容器(包含未启动的)
docker exec -it 容器id /bin/bash # 进入容器
# 启动所有镜像
docker start $(docker ps -a -q)
# stop停止所有容器
docker stop $(docker ps -a -q)
# remove删除所有容器
docker rm $(docker ps -a -q)
# 删除所有镜像
docker rmi $(docker images -q)
总结
学无止境
本文介绍了Docker作为一个应用容器引擎的作用,并详细阐述了在Linux系统中进行离线安装Docker的步骤,包括从下载地址获取安装包,解压,移动文件,创建并配置docker.service文件,以及启动和设置Docker开机自启。此外,还提供了Docker的一些常用命令,如启动、停止、查看状态等。
2192

被折叠的 条评论
为什么被折叠?



