【PVE】Proxmox VE8.0+创建LXC容器安装docker

为了不影响PVE宿主机,通常使用套娃的形式安装Docker容器,再安装相关docker应用。首先在CT模板中创建 Linux 容器,推荐使用Debian。开启ssh登录,修改debian配置,安装docker

一、创建 LXC 容器

1、CT模板下载

点击“模板”,下载debian的CT模板
在这里插入图片描述

2、创建 LXC 容器

点击 “创建 CT” 按钮,开始创建新的 LXC 容器。
在这里插入图片描述
主机名按使用场景随便给一个,我这里是要用来安装docker专门跑redis,所以我这里填:redis,输入登录密码,CT ID不用改,使用默认即可。注意要把无特权的容器取消勾选
在这里插入图片描述
选择“CT模板”,这里我选择debian
在这里插入图片描述
磁盘、CPU、内存大小根据自己的实际需要给就行,因为我这里只跑redis用于测试,所以给16g、2C、2G就可以了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
网络:这里手动指定了ip,可以使用dhcp自动分配ip,这个网络创建之后有问题还可以调整
在这里插入图片描述
DNS:dns使用默认就行
在这里插入图片描述
确认好信息,点击完成创建
在这里插入图片描述
在这里插入图片描述
创建完成后先不要开机,在选项中修改开机自启动、控制台模式等
在这里插入图片描述
同时勾选上嵌套,嵌套的意思是允许在LXC容器中嵌套运行其他容器如docker
在这里插入图片描述

3、修改LXC配置文件

进入pve的shell,对刚创建的LXC容器的配置文件进行修改,位置:/etc/pve/lxc,刚刚创建的CT ID100,所以对应修改100.conf
在这里插入图片描述
如下操作进入pveshell中执行

cd /etc/pve/lxc && vim 100.conf

将如下配置添加进去

lxc.cgroup.devices.allow: a
lxc.cap.drop:
lxc.cgroup2.devices.allow: c 10:200 rwm

或者执行如下命令直接写入,注意将[CT_ID]修改为100

cat >> /etc/pve/lxc/[CT_ID].conf << EOF
lxc.cgroup.devices.allow: a
lxc.cap.drop:
lxc.cgroup2.devices.allow: c 10:200 rwm
EOF

在这里插入图片描述

二、启动LXC容器

启动容器并完成相关初始化配置,进入lxc容器后的就是常规的debian系统的配置没什么特殊的

# 查看lxc容器列表
pct list# 启动lxc容器
pct start 100# 从pve的shell中进入lxc容器
pct enter 100

在这里插入图片描述
点击lxc容器,点击控制台,进入容器shell,测试网络是否正常,网页端shell有时候会有bug,建议开启ssh后通过ssh连接
在这里插入图片描述

1、替换apt source源为国内源

如果能科学上网,这一步忽略,可以不修改
/etc/apt/sources.list中的内容替换为如下内容,替换前建议先进行备份

cp /etc/apt/sources.list /etc/apt/sources.list.bk

如下命令覆盖/etc/apt/sources.list原内容

cat > /etc/apt/sources.list <<EOF
deb https://mirrors.ustc.edu.cn/debian bookworm main contrib
deb https://mirrors.ustc.edu.cn/debian bookworm-updates main contrib
deb https://mirrors.ustc.edu.cn/debian-security bookworm-security main contrib
EOF

验证

apt-get update && apt-get upgrade

在这里插入图片描述
现在就可以使用apt install安装软件了,先装一个vim编辑软件

apt install vim

2、开启lxc容器ssh登录

修改sshd的配置文件,配置文件:/etc/ssh/sshd_config,根据需要找到相关配置进行修改
如下配置为允许root账户使用密码登录

## 允许root登录
PermitRootLogin yes
## 允许密码登录,yes为允许,no为禁止密码登录
PasswordAuthentication yes
# 如下正常为默认配置,不需要修改
## 配置公钥登录
PubkeyAuthentication yes
AuthorizedKeysFile   .ssh/authorized_keys

1)配置root账户密码登录

直接使用如下命令追加配置,实现root账号密码登录

cat >> /etc/ssh/sshd_config <<EOF
PermitRootLogin yes
PasswordAuthentication yes
EOF

修改后记得重启sshd使配置生效

systemctl restart sshd

2)配置公钥登录(publickey)

在客户端机器执行

cd ~/.ssh

生成公钥publickey

ssh-keygen -t rsa -b 4096 -C "user@gmail.com"

上传客户端公钥到目标机器

ssh-copy-id -i id_rsa.pub root@192.168.8.187

在主机上执行
公钥配置上传成功,成功使用公钥登录后,建议关闭密码登录,即在主机上修改配置PasswordAuthenticationyes改为no,允许密码登录 > 禁止密码登录

sed -i '$s/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config

修改后记得重启sshd使配置生效

systemctl restart sshd

3、配置Debian中文环境

1.安装语言包: 首先需要确保系统中已经安装了语言包。可以使用 apt 工具来安装:

apt update
apt install -y locales

2.配置 locale: 接下来需要配置系统的 locale 设置。运行以下命令打开 locale 的配置界面:

dpkg-reconfigure locales

在出现的列表中选择 zh_CN.UTF-8(使用上下箭头来移动,并使用空格来选择)。然后在下一个界面中选择 zh_CN.UTF-8 作为默认的 locale

# 查看当前语音设置
locale# 查看本地已安装语言包
locale -a# 设置语言包,在编辑此配置,最后一行加入如下配置
vim ~/.bashrc
export LANG=zh_CN.utf8

4、配置Debian时区

timedatectl set-timezone Asia/Shanghai # 设置时区
systemctl start systemd-timesyncd  # 自动同步时间

三、LXC容器上安装docker

先安装curl

apt install -y curl

直接使用docker官网命令安装,需要自行解决科学上网

curl -sSL https://get.docker.com/ | sh

在这里插入图片描述
安装docker-compose

curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose# 如下两条命令是避免docker-compose重启lxc容器后失效
echo "export PATH=\$PATH:/usr/local/bin" >> /etc/profile
echo "source /etc/profile" >> ~/.bashrc && source ~/.bashrc

参考文档:
cat EOF的覆盖与追加
Linux sed命令实现替换文本内容
Debian 配置中文环境
PVE下创建LXC debian 容器并安装docker

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

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

相关文章

代码随想录算法训练营day34

代码随想录算法训练营 —day34 文章目录 代码随想录算法训练营前言一、62.不同路径动态规划动态规划空间优化 二、63. 不同路径 II动态规划动态规划优化空间版 三、343. 整数拆分动态规划贪心算法 96.不同的二叉搜索树总结 前言 今天是算法营的第34天&#xff0c;希望自己能够…

Kubernetes 集群中安装和配置 Kubernetes Dashboard

前言 上篇成功部署Kubernetes集群后&#xff0c;为了方便管理和监控集群资源&#xff0c;安装Kubernetes Dashboard显得尤为重要。Kubernetes Dashboard 是一个通用的、基于 Web 的 UI&#xff0c;旨在让用户轻松地部署容器化应用到 Kubernetes 集群&#xff0c;并对这些应用进…

深入内核讲明白Android Binder【三】

深入内核讲明白Android Binder【三】 前言一、服务的获取过程内核源码解析1. 客户端获取服务的用户态源码回顾2. 客户端获取服务的内核源码分析2.1 客户端向service_manager发送数据1. binder_ioctl2. binder_ioctl_write_read3. binder_thread_write4. binder_transaction4.1 …

数据结构(四) B树/跳表

目录 1. LRU 2. B树 3. 跳表 1. LRU: 1.1 概念: 最近最少使用算法, 就是cache缓存的算法. 因为cache(位于内存和cpu之间的存储设备)是一种容量有限的缓存, 有新的数据进入就需要将原本的数据进行排出. 1.2 LRU cache实现: #include <iostream> #include <list>…

初步搭建并使用Scrapy框架

目录 目标 版本 实战 搭建框架 获取图片链接、书名、价格 通过管道下载数据 通过多条管道下载数据 下载多页数据 目标 掌握Scrapy框架的搭建及使用&#xff0c;本文以爬取当当网魔幻小说为案例做演示。 版本 Scrapy 2.12.0 实战 搭建框架 第一步&#xff1a;在D:\pyt…

Python网络自动化运维---用户交互模块

文章目录 目录 文章目录 前言 实验环境准备 一.input函数 代码分段解析 二.getpass模块 前言 在前面的SSH模块章节中&#xff0c;我们都是将提供SSH服务的设备的账户/密码直接写入到python代码中&#xff0c;这样很容易导致账户/密码泄露&#xff0c;而使用Python中的用户交…

【2024年 CSDN博客之星】我的2024年创作之旅:从C语言到人工智能,个人成长与突破的全景回顾

我的2024年创作之旅&#xff1a;从C语言到人工智能&#xff0c;个人成长与突破的全景回顾 引言 回望2024年&#xff0c;我不仅收获了技术上的成长&#xff0c;更收获了来自CSDN平台上无数粉丝、朋友以及网友们的支持与鼓励。在这条创作之路上&#xff0c;CSDN不仅是我展示技术成…

【程序化广告】相关技术(RTB竞价原理、Cookie映射流程、数据统计原理、程序化创意、防作弊方法)

上一篇介绍了【程序化广告】广告投放流程/漏斗/要素/策略/指标&#xff0c;本篇介绍一下程序化广告所使用到的相关技术&#xff0c;包括RTB竞价原理、Cookie映射流程、数据统计原理、程序化创意、防作弊方法等。 1. RTB竞价原理 1&#xff09;竞价逻辑 用户开启电脑&#xf…

软件测试入门—用例设计中的场景图和状态迁移图

在软件测试领域&#xff0c;用例设计是一项至关重要的工作&#xff0c;它直接关系到软件质量的高低。而场景图和状态迁移图作为用例设计中的两种有效工具&#xff0c;能够帮助测试人员更全面、系统地设计测试用例。下面我们就来深入了解一下这两种图。 一、场景图 场景图主要…

数据表中的数据查询

文章目录 一、概述二、简单查询1.列出表中所有字段2.“*”符号表示所有字段3.查询指定字段数据4.DISTINCT查询 三、IN查询四、BETWEEN ADN查询1.符合范围的数据记录查询2.不符合范围的数据记录查询 五、LIKE模糊查询六、对查询结果排序七、简单分组查询1.统计数量2.统计计算平均…

前端Vue2项目使用md编辑器

项目中有一个需求&#xff0c;要在前端给用户展示内容&#xff0c;内容有 AI 生成的&#xff0c;返回来的是 md 格式&#xff0c;所以需要给用户展示 md 格式&#xff0c;并且管理端也可以编辑这个 md 格式的文档。 使用组件库 v-md-editor。 https://code-farmer-i.github.i…

Windows系统提示RunDLL PcaWallpaperAppDetect错误修复方法

最近&#xff0c;Win11 24H2预览版和Win10 LTSC 2025功能更新偶尔会触发RunDLL错误弹窗 具体表现为 //英文提示 Error in C:\WINDOWS\system32\PcaSvc.dll Missing entry: PcaWallpaperAppDetect//中文提示 C:\WINDOWS\system32\PcaSvc.dll出错 丢失条目:PcaWallpaperAppDe…

光谱相机在智能冰箱的应用原理与优势

食品新鲜度检测 详细可点击查看汇能感知团队实验报告&#xff1a;高光谱成像技术检测食物新鲜度 检测原理&#xff1a;不同新鲜程度的食品&#xff0c;其化学成分和结构会有所不同&#xff0c;在光谱下的反射、吸收等特性也存在差异。例如新鲜肉类和蔬菜中的水分、蛋白质、叶…

手写SOCKET进行HTTP通信

网络基础 我们电脑主板上都内置了多种网卡&#xff0c;一般主要有以下几类&#xff1a; 虚拟网卡&#xff08;loopback&#xff09; 注意&#xff0c;它是虚拟的&#xff0c;并不是物理网卡&#xff0c;也被称为是本地环回地址(或接口)&#xff0c;一般将127.0.0.1作为本地环回…

MFC程序设计(二)基于对话框编程

从现在开始&#xff0c;我们将以基于对话框的MFC应用程序来讲解MFC应用 向导生成基于对话框MFC应用程序 对话框是一种特殊类型的窗口&#xff0c;绝大多数Windows程序都通过对话框与用户进行交互。在Visual C中&#xff0c;对话框既可以单独组成一个简单的应用程序&#xff0…

Flink Gauss CDC:深度剖析存量与增量同步的创新设计

目录 设计思路 1.为什么不直接用FlinkCDC要重写Flink Gauss CDC 2.存量同步的逻辑是什么 2.1、单主键的切片策略是什么 2.2、​​​​​复合主键作切片&#xff0c;怎么保证扫描到所有的数据 3、增量同步的逻辑是什么 4、存量同步结束之后如何无缝衔接增量同步 5、下游…

idea新增java快捷键代码片段

最近在写一些算法题&#xff0c;有很多的List<List这种编写&#xff0c;想着能否自定义一下快捷键 直接在写代码输入&#xff1a;lli&#xff0c;即可看见提示

深度学习-91-大语言模型LLM之基于langchain的模型IO的提示模板

文章目录 1 Model的输入输出2 提示模板2.1 提示模板的特点2.2 提示模板的类型3 使用提示模板3.1 设置环境变量3.2 PromptTemplate提示模板3.2.1 通过from_template方法3.2.2 直接生成提示模板3.2.3 使用提示模板3.2.4 复用提示模板3.3 ChatPromptTemplate聊天提示模板3.3.1 通过…

stm8s单片机(二)外部中断实验

中断优先级 stm8的中断优先级不是固定不变的&#xff0c;stm8的中断分为硬件优先级与软件优先级&#xff1b;当多个中断发生时&#xff0c;cpu会先响应软件优先级高的中断&#xff0c;若软件优先级相同会先响应硬件优先级高的&#xff1b; 其中软件优先级有四个 /*** brief …

社区版Dify实现文生视频 LLM+ComfyUI+混元视频

社区版Dify实现文生视频 LLMComfyUI混元视频 一、 社区版Dify实现私有化混元视频效果二、为什么社区版Dify可以在对话框实现文生视频&#xff1f;LLMComfyUI混元视频 实现流程图&#xff08;重点&#xff09;1. 文生视频模型支持ComfyUI2. ComfyUI可以轻松导出API实现封装3. Di…