论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
主机系统
›
linux
›
docker摆设openwrt体系编译情况
docker摆设openwrt体系编译情况
十念
论坛元老
|
2025-4-8 00:27:11
|
显示全部楼层
|
阅读模式
楼主
主题
1766
|
帖子
1766
|
积分
5298
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
背景:首次接触docker。
1、拉取镜像。
2、通过初始镜像开启一个容器,并将容器重新设置一个tag,检察容器,通过exec开启终端,注:docker名称必须是小写的,检察docker容器列表。
docker run -it 861b7388600f91f3a0b82a496821eeb88733c8138b7228d3267161507af4aa89 /bin/bash
docker rename interesting_moser ubuntuforcompile
docker ps -a
docker exec -it ubuntuforcompile /bin/bash
3、禁用root远程登录ssh,并允许ubuntu账号登录,并锁定root账户。
sed -i 's/^#?PasswordAuthentication .
/PasswordAuthentication yes/' /etc/ssh/sshd_config
sed -i 's/^#?PermitRootLogin .
/PermitRootLogin no/' /etc/ssh/sshd_config
echo "AllowUsers ubuntu" >> /etc/ssh/sshd_config
sudo passwd -l root (反操纵sudo passwd -u root)
4、将容器做成一个镜像,再创建ssh容器。
docker commit 861b7388600f91f3a0b82a496821eeb88733c8138b7228d3267161507af4aa89 ubuntuforcompile
docker run -d -p 2222:22 ubuntuforcompile /usr/sbin/sshd -D
docker rename XX ubuntuforcompile
5、安装编译情况。
点击检察代码
#!/bin/bash
set -e
echo "?? 更新 APT 软件源..."
sudo apt update
echo "?? 安装 OpenWrt 编译所需依赖包:"
# 编译工具链相关
sudo apt install -y \
build-essential \ # 编译 C/C++ 必备:gcc、make、libc 等
g++ \ # GNU C++ 编译器
gcc \ # GNU C 编译器
make \ # 编译自动化工具
libtool \ # 用于构建共享库
# 预处理器/生成器
flex \ # 词法分析工具
bison \ # 语法分析工具
swig \ # 生成语言接口封装工具
# 脚本 & 工具链支持
gawk \ # GNU awk,makefile 中常用
gettext \ # 国际化支持
unzip \ # 解压 zip 包
zlib1g-dev \ # 压缩库开发文件
file \ # 检测文件类型
wget \ # 网络下载工具
curl \ # 网络请求工具
rsync \ # 高效文件同步工具
# OpenWrt 编译常用工具
subversion \ # SVN,用于拉代码
git \ # Git 同上
ccache \ # 编译缓存加速
libelf-dev \ # ELF 文件解析支持
zstd \ # 新一代压缩算法支持
# 菜单配置支持(如 menuconfig)
libncurses-dev \ # 字符终端 UI 支持
# 安全/加密支持
libssl-dev \ # OpenSSL 开发头文件
# Python 支持
python3 \ # Python3 主程序
python3-pip \ # Python 包管理器
# Java 支持(某些模块会用)
default-jre \ # Java 运行环境
default-jdk \ # Java 开发工具
ecj \ # Eclipse 编译器
fastjar \ # 创建 Java jar 文件
java-propose-classpath \# Java 类路径提示工具
ant \ # Java 构建工具
# XML/Perl 解析(如 feeds/patches 中会用)
autoconf \ # 自动配置脚本生成工具
automake \ # Makefile 辅助生成
libxml-parser-perl \ # Perl 的 XML 解析器
xsltproc # XML 处理工具(XSLT 转换)
echo ""
echo "?? 检测 Python 版本..."
PYVER=$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')
DISTUTILS_PKG="python${PYVER}-distutils"
echo "?? 正在安装 ${DISTUTILS_PKG} ..."
if ! sudo apt install -y "$DISTUTILS_PKG"; then
echo "?? 未找到 ${DISTUTILS_PKG},尝试建立软链接兼容"
sudo ln -s "/usr/lib/python${PYVER}/distutils" "/usr/lib/python3/distutils"
fi
echo ""
echo "? 环境准备完成,可以开始编译 OpenWrt!"
复制代码
6、克隆openwrt,并切换到openwrt-24.10,克隆自界说的插件
git clone
https://git.openwrt.org/openwrt/openwrt.git
cd openwrt
git checkout openwrt-24.10
echo "src-git myfeed
https://github.com/XXX/TestOpenwrt.git
" >> feeds.conf.default
./scripts/feeds update -a
./scripts/feeds install -a
7.make memuconfig
主要选中了这些
LUCI中:
luci-app-ddns
luci-app-openclash(需要dnsmasq-full,需要把dnsmasq取消)
luci-app-openvpn
luci-app-samba4
luci-app-udpxy
luci-app-vlmcsd
VPN中:
openvpn-openssl
8、编译make
nproc 检察线程个数
make -j$(nproc)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
十念
论坛元老
这个人很懒什么都没写!
楼主热帖
Velero系列文章(四):使用Velero进行 ...
Kali Linux利用MSF入侵安卓手机(小白版 ...
SonarQube安全扫描
C/C++函数的调用约定详解
三天吃透Kafka面试八股文
微光互联 TX800-U 扫码器无法输出中文 ...
Android Studio 实现登录注册-源代码 ...
xmrig挖矿样本分析 miner
Python嘎嘎涨知识的7个小游戏,玩过的 ...
Java多线程(一篇从0讲透)
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
浏览过的版块
SCM
IT职场那些事
移动端开发
DevOps与敏捷开发
快速回复
返回顶部
返回列表