比如 nginx ,mysql 这些软件 可以远程下载部署或者内网选择包部署,还能自动设置开机自启 每次搭环境下软件烦死啦
1
8E9aYW8oj31rnbOK 2023-08-02 00:55:29 +08:00
Docker / BT panel 7.7
|
2
iridescent0rsy 2023-08-02 01:20:40 +08:00 via Android
ansible
|
3
wangkun025 2023-08-02 01:34:04 +08:00 via Android
熟悉 Python 就 ansible ,熟悉 Ruby 就 chef
|
4
790002517zzy OP @Leonkennedy2 宝塔不能内网使用吧
|
5
790002517zzy OP 最好是脚本 因为有时候要内网使用的 可以把软件包下载进去然后脚本安装配置等等
|
6
youyoumarco 2023-08-02 08:04:15 +08:00
docker k8s 那套搞起
|
7
loading 2023-08-02 08:38:42 +08:00 1
sudo apt download xxx
sudo dpkg -i *.deb 因为你内网没有源,这是没办法的。 把整个源拉到内网吧,也不算大,一百多个 T 。 |
8
8E9aYW8oj31rnbOK 2023-08-02 08:49:27 +08:00
@790002517zzy docker 打个镜像吧,然后导出,在 docker 的 doker 导入。
|
9
790002517zzy OP @Leonkennedy2 宝塔用 docker 的话 宝塔下载那些软件不需要联网吗
|
10
cheng6563 2023-08-02 09:37:23 +08:00
建议直接用容器。比如 nerdctl
|
11
790002517zzy OP @loading 内网我的意思是手动下载包丢进去,然后脚本去安装配置
|
12
790002517zzy OP 下载安装都是些小事,主要在于配置(我是后端并非运维),比如 mysql 每次手动安装都要搞半天 开机自启也要设置半天
|
13
wxyrrcj 2023-08-02 10:17:23 +08:00
oneinstack
|
14
vincent7245 2023-08-02 10:21:34 +08:00
作为后端,运维还是要懂一些的,趁着个机会学习一下简单的运维操作也好
|
15
skiy 2023-08-02 10:30:20 +08:00
oneinstack
|
16
790002517zzy OP @vincent7245 我会装 但脚本可以提升效率
|
17
loading 2023-08-02 10:42:41 +08:00
@790002517zzy #11 linux 的配置文件基本都是文本操作啊,学一下写 sh 脚本就行。
基本套路就是 脚本装软件,然后 cp 或者 wget .conf 文件,最后再运行一下系统的服务命令就完事了。 你可能需要用到 grep sed awk 等大杀器小命令 |
18
loading 2023-08-02 10:45:14 +08:00
既然你是后端,你应该会一门后端语言,你用这个语言写成工具就好了。
然后你就是一名 DevOps 了。 |
19
zedpass 2023-08-02 11:02:36 +08:00
使用 docker compose 可以满足你的需求
|
20
brader 2023-08-02 11:07:52 +08:00
你连网都不想连,怎么搞,你以为仅仅是安装你需要的那几个包,但其实会依赖到很多其他环境,其他包,你一个一个装,不要命啦
|
21
squarefong17 2023-08-02 11:17:15 +08:00
1. 安装 docker 。debian 系就 apt 装,加-y 参数后就不需要手动确认了,红帽系就 yum 装。ubuntu 应该会帮你启动的,pacman 需要手动 systemctl enable 一下。别的我不熟,你自己查一下,加自动启动很方便的。
2. 从硬盘导入你需要的 docker 镜像。docker 对于 image 可以导出到本地文件,也可以从本地文件导入镜像。你在有网的地方自己导出好,到内网再导入。 3. docker run 的时候加 --network=host 可以让容器里面的端口全部透出来, 加 --restart=always 即可实现 docker 启动就自动启动该容器。第一步开启了 docker 开机自启,这里 restart=always ,相当于就可以让你的 mysql 也开机自启了。如果你要统一配置文件,无非就是把某个文件启动的时候 mount 进去。 把上面几步命令写到脚本里面,这不就是一键部署脚本吗。 |
22
790002517zzy OP @brader 不是我不想连 你做过政府保密项目就知道了
|
23
790002517zzy OP @squarefong17 嗯 目前只有 docker 方便一点
|
24
julyclyde 2023-08-02 13:07:50 +08:00
1 如果你需要经常搭环境,那可能是你的需求有问题
|
25
790002517zzy OP @julyclyde 新机器不用搭环境吗
|
26
julyclyde 2023-08-02 13:33:28 +08:00
@790002517zzy 经常有需要搭环境的新机器就是个问题
|
27
mdn 2023-08-02 13:37:58 +08:00
买个 ITX 小机器,装 ubuntu 、docker 镜像源 ,带到内网
|
28
harrozze 2023-08-02 13:39:21 +08:00
把 deb 包下载回来(有选项可以把依赖包也都下回来),然后写个 ansible 脚本,可以远程安装和配置。ansible 需要在目标机器上安装 python3 ,执行一些相对复杂的命令,记得一并下回来。装到 U 盘里,用一台能连内网的 linux 机器跑 ansible 。
|
29
hlbcpt 2023-08-02 13:43:24 +08:00 via iPhone
lnmp 离线安装,适合你
|
30
brader 2023-08-02 14:07:57 +08:00
@790002517zzy 如果你每台服务器需要的基础环境都是一样的,那你可以考虑直接导出成基础系统镜像呗
|
31
ZedRover 2023-08-02 15:59:18 +08:00
nixos
|
32
xuelu520 2023-08-02 16:00:07 +08:00
自己写好 shell 就行了
|
33
flexbug 2023-08-02 16:03:07 +08:00
我的 nginx 包是自己编译的,我写成脚本,然后放到 ansible 下面运行,然后接入了 jenkins ,在 jenkins 建了一些 job ,选预填充那种,每行一个 ip ,执行就可以了,很多我都这样搞,比如安装各种 exporter
|
34
zeusho871 2023-08-02 16:06:32 +08:00 via Android
那就打包源码,自己编译,具体问 gpt
|
35
GTim 2023-08-02 16:08:13 +08:00
lnmp
|
36
asdjgfr 2023-08-02 16:51:05 +08:00
1. shell - 无依赖
2. Ansible - 专业 3. 任意一门脚本语言 Python/Node.js 编译成可执行文件 - 随心所欲 |
37
twofox 2023-08-02 17:09:52 +08:00
自己问 GPT 写一个快速安装 docker+portainer 的 shell 脚本,然后安装好之后就用 portainer 安装各种软件,还可以控制版本、启动、数量、端口
|
38
lwep 2023-08-02 17:33:40 +08:00
要是个人电脑能接到内网,那就个人电脑再连个热点,开 http 代理给其它内网机器用吧
|
39
jinqzzz 2023-08-03 00:10:29 +08:00 via iPhone
几行 shell 的事,不知道有什么好纠结的
|
40
shirenran1 2023-08-03 11:46:55 +08:00
1panel docker 版的宝塔
|