Docker 实例

2023-05-16

1、创建两个容器实例:docker01 和 docker02
要求:
1)docker01 运行在cpu0上
2)docker02 运行在cpu1上
3)测试docker01 和 docker02使用的CPU百分比

docker run -itd -c 512 --cpuset-cpus 0 --name docker01 -h dockertest01 centos bash
docker run -itd -c 1024 --cpuset-cpus 1 --name docker02 - h dockertest02 centos bash

2、Docker窗口运行结束后自动释放系统资源
应用场景:系统压力测试

docker run -it  --rm --name dockertest01 centos sleep 5
# 如果出现以下信息:
WARNING: IPv4 forwarding is disabled. Networking will not work
# 解决方法:
 cat /proc/sys/net/ipv4/ip_forward
 # 如果为:0
 # 执行以下命令:
 echo 1 > !$^C	或 systemctl restart docker

3、创建一个docker实例,只允许使用2个cpu核心,内存只能使用128M

docker run -it -m 128m --cpuset-cpus 0,1 --name dockertest01 -h dockertest01 centos bash

4、将本地目录映射到docker实例中

docker run -itd -v /var/www/html:/var/www/html[:ro|rw] --name webserver01 -h webserver01 centos7

ro:只读
rw:读写
-----
目录继承 (--volumes-from):实现继承挂载指定容器的挂载目录
docker run -itd --vlolumes-from 容器名称[:ro|rw] --name nginx01 centos7:latest

5、将本地物理设备/dev/sda映射到docker实例中,配置实例的写入配额为1MB

docker run -itd -v /var/www/html:/var/www/html[:ro|rw] --device /dev/sda:/dev/sda --name docker01 -h docker01 --device-write-bps:1MB centos7 bash


6、docker实例的网络配置

  • 创建桥设备br0
    - 安装包:rpm -ivh /mnt/Packages/bridge-utils-1.5-9.el7.x86_64.rpm

  • 将网卡绑定到桥设备上:
    - 备份网卡配置:cp /etc/sysconfig/network-scripts/ifcfg-eth[x] /目标目录
    - 编辑网卡配置:
    - vim ifcfg-eth[x] 添加配置:BRIDGE=“br0”
    - 创建桥设备br0配置文件:
    ```bash
    vim ifcfg-br0

      DEVICE="br0"
      NM_CONTROLLED="yes"
      BOOTPROTO=none
      ONBOOT=yes
      TYPE="Bridge"
      IPADDR=
      NETMASK=
      GATEWAY=
      DNS1=114.114.114.114
      ```
    
  • 下载pipework包 : https://github.com/jpetazzo/pipework

  • wget https://github.com/jpetazzo/pipework/archive/refs/heads/master.zip

7.创建Docker私有仓库
- 环境:
- 私有仓库地址:192.168.1.6
- Docker服务器地址:192.168.1.7
- 使用docker私有仓库来pull/push镜像

前期准备:
- 关闭系统防火墙
- 关闭selinux
- 重启docker服务

配置docker私有仓库

docker search registry
docker pull registry
docker run -d -p 5000:5000 -v /opt/registry:/var/lib/registry registry

查看私有仓库的镜像列表:
http://ip:5000/v2/_catalog
示例:http://10.211.55.4:5000/v2/_catalog

docker服务器配置docker的私有仓库

vim /etc/docker/daemon.json

{
	"insecure-registries":["10.211.55.4:5000"]
}

# insecure-registries 不安全的注册(非https协议)

上传docker 镜像至私有仓库

# 加载镜像文件
docker load -i <镜像名>
docker tag <镜像名:标签> <私有仓库地址/新镜像名:标签>
docker tag busybox:latest 10.211.55.4:5000/busybox:latest
docker images
docker push 10.211.55.4:5000/busybox
# 删除镜像:
docker rmi <镜像名称>

// http://10.211.55.4:5000/v2/_catalog

{
“repositories”: [
“busybox”
]
}

使用harbor搭建Docker私有仓库
- harbor: 由VMWare公司提供的开源的Docker Registry 项目

搭建步骤:

systemctl stop firewalld && systemc disable firewalld
yum install yum-utils device-mapper-persistent-data lvm2 -y
# 配置docker yum源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装docker-ce 及 相关工具
yum install docker-ce docker-ce-cli containerd.io -y
# 启动docker服务并开启开机自启动
systemctl start docker && systemctl enable docker
# 安装docer-compose -- 负责管理Docker容器集群,实现快速编排
yum install epel-release -y
# 安装pip
yum install python-pip -y
# 更新pip
pip install --upgrade pip
# 使用pip安装docker-compose
pip install -U -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose

# 下载hardor安装文件
wget https://harbor.orientsoft.cn/harbor-v1.5.0/harbor-offline-installer-v.1.5.0.tgz
tar -zxvf harbor-offline-installer-v.1.5.0.tgz -C <目标目录>

# 配置harbor
vim harbor.cfg
#修改第7行和68行
hostname = 10.211.55.4 or hostname
harbor_admin_password = <yourpassword>
# 创建存放Image镜像目录
mkdir ../data
# 初始化harbor
./prepare
# 安装harbor
./install.sh

# 查看harbor镜像
http://ip/harbor/sign-in (用户:admin)

vim /etc/docker/daemon.json

{
	"insecure-registries":["10.211.55.4"]
}


# 登录harbor 私有仓库
docker login 10.211.55.4
username:admin
password:

# 上传镜像至harbor私有仓库
docker images
docker tag source_image:latest 10.211.55.4/项目名称/镜像名:latest
docker push 10.211.55.4/项目名称/镜像名:latest
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker 实例 的相关文章

随机推荐

  • git为什么会有冲突

    看了百度很多回答 xff0c 觉得和实操有点出入 xff0c 记录一下个人理解 结论 xff1a 冲突的产生就是各分支修改的文件版本不一致 xff08 远程冲突同理 xff09 例 xff1a 分支 m 和分支 d 都有一个相同文件 61
  • 视觉SLAM十四讲:运动方程

    SLAM xff1a 同时定位和建图 xff08 Simultaneous Localization and Mapping xff09 希望机器人从未知环境的未知地点出发 xff0c 在运动过程中通过重复观测到的地图特征 xff08 比如
  • NeRF简介及nerf-pytorch的使用

    NeRF全称为Neural Radiance Field 神经辐射场 是2020年发表的论文 xff0c 论文名字为 NeRF Representing Scenes as Neural Radiance Fields for View S
  • SLAM如何定位与建图

    SLAM xff1a 同时定位和建图 xff08 Simultaneous Localization and Mapping xff09 机器人从未知环境中的未知地点出发 xff0c 在运动过程中通过重复观测到的地图特征 xff08 比如
  • OpenMV——串口通信+发送中心位置

    串口通信 OpenMV本质还是一个单片机 xff0c 可以通过调用pyb中的UART使用串口通信 xff0c 注意发送的数据类型为字符串 xff0c 可以通过json dumps 进行字符串转换 span class token keywo
  • liunx下rpm包mysql安装脚本

    目录 文章目录 前言 一 mysqlshell安装脚本 二 xff0c mysql 配置文件 前言 liunx下mysql安装脚本shell脚本 采用的版本时 mysql 5 7 28 xff0c rpm安装方式 shell安装脚本 xff
  • setTimeout与setInterval的坑以及优缺点

    转自 xff1a setTimeout与setInterval的坑以及优缺点 找寻的千寻 博客园 setInterval和setTimeout的缺陷和优势分析 F ZERO F的博客 CSDN博客 settimeout缺点 说到setTim
  • 登录功能app端的建立与实现

    选择使用Android文件的一些主要包装命名搭建 1 Layout存放布局界面的地方 xff0c values是存放图片和颜色 字体等 2 manifests体现层 61 61 代码 3 执行界面打开 lt application lt 登
  • 麻将胡牌算法(遍历+剪枝)

    麻将胡牌算法 xff08 遍历 43 剪枝 xff09 简介麻将胡牌算法及代码1 方法引入2 类型定义2 1 牌定义2 2 牌特征定义 3 计算胡牌3 1 检测十三幺牌型3 2 检测七小对牌型3 3 检测普通牌型胡牌3 3 1 检测所有可能
  • 接口报错Missing grant type

    错误详情 xff1a 原因 xff1a 缺少表单参数 xff1a grant type 但如果传递了该参数依旧报错则说明传递的数据格式有误 xff0c 需要修改数据格式 解决方式 xff1a 第一步 xff1a 设置数据格式 Content
  • 如何关闭vue-element-admin中的格式化校验

    1 找到根目录下的 eslintignore文件 xff0c 如下 xff1a 2 将该文件内的内容全部替换为 xff0c 如图所示 xff1a 3 删除node modules和package lock json文件 xff0c 重新运行
  • D435i问题及解决

    提问连接 https support intelrealsense com hc en us requests new 1 使用realsense viewer时 xff0c 如果在3D模式下观看 xff0c 需要打开stereo modu
  • ubuntu磁盘空间不足解决办法

    df h后发现 目录下空间很少 点击左下角 搜索disk 点击 disk usage 看各个目录下占用的空间 xff0c 删除空间 2 在ubuntu 使用Windows的磁盘空间 发现 media liao 软件 下还有空间 xff0c
  • instant-ngp简介及NeRF的使用

    英伟达实验室开源的instant ngp全称为Instant Neural Graphics Primitives xff0c 源码地址为https github com NVlabs instant ngp xff0c 可用于快速的训练N
  • Bad owner or permissions on /home/cxhpc/.ssh/config

    实测解决方案 xff1a 进入 home cxhpc ssh sudo chmod 600 config
  • D3.js学习指北--第三章应用,冒泡排序的可视化

    D3学习指北 第三章应用 xff0c 冒泡排序的可视化 前言 本章前面已经讲了D3选择操作 xff0c 以及选择后返回的选择集的操作 那么我们应用一下 xff0c 利用d3 js写一个冒泡排序的可视化 首先第一步 xff1a 分析需求 一个
  • STM32(CubeMax)基础配置

    对于刚刚接触HAL库的小伙伴来说 xff0c 每次对于基础部分都需要查阅视频去进行操作 xff0c 本文就是通过STM32F103C8T6模块进行基础配置 xff0c 其他单片机基本与之一致 1 SYS配置如下图所示 2 RCC配置如下图所
  • (一)ROS学习之搭建realsense d435相机工作环境

    注 xff1a 本教程是在RealSense SDK和ROS Kinetic已正确安装的情况下进行的 一 realsense ros安装 1 Create a catkin workspace mkdir p realsense rosws
  • (三)ROS学习之gazebo加载异常或者加载缓慢完美解决

    1 升级gazebo版本 在终端运行以下指令 sudo sh c 39 echo 34 deb http packages osrfoundation org gazebo ubuntu stable 96 lsb release cs 9
  • Docker 实例

    1 创建两个容器实例 xff1a docker01 和 docker02 要求 xff1a 1 xff09 docker01 运行在cpu0上 2 xff09 docker02 运行在cpu1上 3 xff09 测试docker01 和 d