Docker 入门篇(二)-- Linux 环境离线安装

引言

docker 系列文章:

  • Docker 入门篇(一)-- 简介与安装教程(Windows和Linux)

一、安装环境准备

  1. centos :CentOS Linux release 7.6.1810 (Core)
  2. docker 版本:docker-26.1.0.tgz
    官网下载地址:点击下载
  3. docker-compose 版本:v2.26.1
    官网下载地址:点击下载

二、安装方式一:常规安装

  1. 上传 安装包 到 服务器 /root 目录 进行解压
tar -zxvf docker-26.1.0.tgz

在这里插入图片描述

  1. 复制文件
    将docker中的全部文件,使用下边命令,复制到/usr/bin
cp ./docker/* /usr/bin
  1. 创建docker.service文件
# 进入 /etc/systemd/system/ 目录
cd /etc/systemd/system/
# 创建 docker.service
touch docker.service

在这里插入图片描述

  1. 编辑docker.service文件
# 编辑 docker.service
vim docker.service

将下边内容复制到docker.service。

注意,将其中的ip地址,改成您的服务器地址,其它参数不用改。

–insecure-registry=192.168.10.1

[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 --selinux-enabled=false --insecure-registry=192.168.10.1 
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
  1. 添加可执行权限:
chmod +x /etc/systemd/system/docker.service
  1. 重载配置文件:
systemctl daemon-reload
  1. 启动docker:
systemctl start docker
  1. 查看 docker 服务状态
systemctl status docker

在这里插入图片描述

  1. 设置开机自启动:
systemctl enable docker.service

三、安装方式二 :docker 脚本安装

  1. 创建 docker.service 文件
    在 docker-26.1.0.tgz同目录下 ,创建上文内容的 docker.service 文件

  2. 新建安装脚本文件 docker-install.sh

touch docker-install.sh

编辑docker-install.sh,内容如下

#!/bin/shecho '解压tar包'
tar -xvf $1
echo '将docker目录下所有文件复制到/usr/bin目录'
cp docker/* /usr/bin
echo '将docker.service 复制到/etc/systemd/system/目录'
cp docker.service /etc/systemd/system/
echo '添加文件可执行权限'
chmod +x /etc/systemd/system/docker.service
echo '重新加载配置文件'
systemctl daemon-reload
echo '启动docker'
systemctl start docker
echo '设置开机自启'
systemctl enable docker.service
echo 'docker安装成功'
docker -v
  1. 新建 docker 卸载脚本 docker-uninstall.sh
touch docker-uninstall.sh

编辑 docker-uninstall.sh,内容如下

#!/bin/shecho '停止docker'
systemctl stop docker
echo '删除docker.service'
rm -f /etc/systemd/system/docker.service
echo '删除docker文件'
rm -rf /usr/bin/docker*
echo '重新加载配置文件'
systemctl daemon-reload
echo '卸载成功'
  1. 赋予 脚本可执行权限。
chmod +x docker-install.sh
chmod +x docker-uninstall.sh
  1. 执行 脚本安装 docker
sh docker-install.sh  docker-26.1.0.tgz
  1. 查看docker状态
systemctl status docker

在这里插入图片描述

四、离线安装 docker-compose

Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。它采用YAML文件来配置应用程序的服务,然后使用一个命令,就可以启动并运行配置中的所有服务。通过Docker Compose,用户无需手动逐个启动容器,而是可以通过一个简单的配置文件来管理复杂的多容器应用程序。

1. 下载docker-compose

官方地址:

> https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64

2. 安装

将 docker-compose-linux-x86_64 文件上传到 /root 目录,执行下列命令

#移动文件到/usr/local/bin/,并重命名为docker-compose
sudo mv /root/docker-compose-linux-x86_64  /usr/local/bin/docker-compose
#赋予docker-compose 可执行权限。
sudo chmod +x /usr/local/bin/docker-compose

#查看版本 docker-compose version

docker-compose -v

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/652418.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Sy8网络管理命令(ubuntu23.10和centos8)

前言、 本次实验主要是扩展学习,不仅限在课本的内容。毕竟课本的内容太过于陈旧了。需要的童鞋看看。 说明:(书本中sy9”第3.实验内容“大家还是要做下。) 1、使用ubuntu做实验的童鞋只要看第二、三、四、七章节的部分内容。 2、使…

react-lib 读取本地模板创建PDF

读取本地文件和读取远程的一样,都使用fetch去获取 async function modifyPdf() {let url ./template.pdflet existingPdfBytes await fetch(url).then(res > res.arrayBuffer()) // 这里也有问题要转一下const d new Uint8Array(existingPdfBytes)const pdfDo…

区块链技术与应用学习笔记(1-4节)——北大肖臻课程

目录 1. 区块链初识(课程简介) 被过度炒作,落地应用有限? 下一代的价值互联网?世界上最慢的数据库? 2. BTC-密码学原理(比特币) 1)哈希 哈希函数特点 个人学习所得 2)签名 个人对于…

基于yolov5实时实例分割

是一个结合了最新技术进展(State-of-the-Art, SOTA)的实时实例分割项目,基于著名的YOLOv5目标检测架构,并对其进行扩展以实现对图像中每个对象实例的精确像素级分割。以下是该项目的中文介绍: YOLOv5: YOL…

实习算法准备之BFSDFS

这里写目录标题 1 理论1.1 BFS框架 2 例题2.1 二叉树的最小高度2.2 打开转盘锁2.3 滑动谜题 1 理论 BFS和DFS是两个遍历算法,其中DFS之前已经接触过,就是回溯,忘记的话请回顾回溯篇的例题(全排列,N皇后) B…

Lagent AgentLego 智能体应用搭建-笔记六

本次课程由Lagent&AgentLego 核心贡献者樊奇老师讲解【Lagent & AgentLego 智能体应用搭建】课程 课程视频:https://www.bilibili.com/video/BV1Xt4217728/ 课程文档:https://github.com/InternLM/Tutorial/tree/camp2/agent 大语言模型的局限…

【C++】哈希思想

目录 哈希介绍: 一,位图 1-1,位图的认识 1-2,位图的简单实现 1-3,位图的应用 二,布隆过滤器 2-1,布隆过滤器的认识 2-2,布隆过滤器的简单实现 2-3,布隆过滤器的…

LIUNX系统编程:动态库的制作

目录 1.将add.c和sub.c编译形成.o文件 2.讲add.o和sub.o打包成库 3.Makefile 4.细节问题 5.解决办法 1.直接将自己的库拷贝到库中 2.更改动态库辅助查找的环境变量 3. 在lib64中建立一个软连接 1.将add.c和sub.c编译形成.o文件 gcc -c -fPIC add.c sub.c// fPIC生成位置…

揭秘APP广告:自刷收益真的可能吗?

在数字时代的浪潮中,应用程序(App)已成为我们生活的一部分。从早晨的闹钟应用到夜晚的助眠软件,我们的手机屏幕上挤满了各式各样的App。但是,你有没有想过,这些看似简单的App背后隐藏着怎样的商业模式&…

Docker——数据管理和网络通信

目录 一、Docker的数据管理 1.数据卷 2.数据卷容器 3.容器互联 二、Docker镜像的创建 1.基于现有镜像创建 2.基于本地模板创建 3.基于Dockerfile 创建 3.1联合文件系统(UnionFS) 3.2镜像加载原理 3.3为什么Docker里的Centos大小才200M 4.Dcok…

Redis系列5:深入分析Cluster 集群模式

1 背景 前面我们学习了Redis高可用的两种架构模式:主从模式、哨兵模式。 解决了我们在Redis实例发生故障时,具备主从自动切换、故障转移的能力,终保证服务的高可用。 但是这些其实远远不够,随着我们业务规模的不断扩展&#xff0…

Docker深入探索:网络与资源控制、数据管理与容器互联以及镜像生成

目录 一、 Docker网络 (一)Docker网络实现原理 (二)Docker网络模式 1. Bridge网络(默认) 2. Host网络 3. None网络 4. Container网络 5. 自定义网络 二、资源控制 (一)cgr…