一.容器和单机容器编排入门与实战 1.1 容器概述、Docker详解、安装与验证
Ubuntu 22.04
一. NAMESPACE详解
容器基于namespace实现资源隔离
容器技术是在一个进程内实现运行指定服务的运行环境,并且还可以保护宿主机内核不受其他进程的干扰和影响,如文件系统空间、网络空间、进程空间等,目前主要通过
以下技术实现容器运行空间的相互隔离:
二. Cgroup详解
容器基于cgroup实现资源限制。
Linux Cgroups的全称是Linux Control Groups,它最主要的作用,就是限制一个进程组能够使用的资源上限,包括CPU、内存、磁盘、网络带宽等等。此外,还能够对进程进行优先级设置,以及将进程挂
起和恢复等操作。
三. 存储引擎及镜像基本介绍
UnionFS 通过这个机制 实现容器分层挂载 实现合并提供给容器使用
overlay2: 主流存储引擎
写时复制
四. 安装部署 docker 和 docker-compose
方法一:(使用 apt-get 进行安装)
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
# docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]
apt install docker-ce=5:20.10.17~3-0~ubuntu-jammy docker-ce-cli=5:20.10.17~3-0~ubuntu-jammy
方法二: 二进制方式安装
详见脚本 docker-install.sh
对Docker进行镜像加速及使用systemd进行资源限制等参数优化、Docker的常用命令;
镜像管理:
制作镜像
上传镜像
下载镜像
查找镜像
导出镜像
导入镜像
删除镜像
查询镜像
docker save nginx:1.20.2 > nginx-image.tar
docker load -i nginx-image.tar
~# docker cp d520d4462f51:/etc/nginx/conf.d/default.conf /opt/
~# docker cp /etc/passwd d520d4462f51:/tmp
# docker exec -it 40e6379cf371 sh/bash #推进入到容器执行命令操作,推荐使用此方式
# docker images #查看本地所有镜像
# docker inspect 50fe74b50e0d #显示docker对象(镜像、网络、容器等)的详细信息
# docker load -i nginx-1.20.2.tar.gz #从一个tar包或标准输入导入镜像
# docker logs -f nginx-container-test1 #持续查看容器标准输出和错误输出的日志
~# docker pull mysql:5.6.48
docker tag nginx:1.20.2 harbor.magedu.net/myserver/ningx:20221616-shzbz2w
# docker run -p 80:80/tcp -p 443:443/tcp nginx:1.20.2 #创建容器并指定多端口映射
本文来自博客园,作者:梳碧湖砍柴少年,转载请注明原文链接:https://www.cnblogs.com/pang-lu/p/16848841.html