1. 工具简介
Code to Image 是一类将代码片段转换为精美图片的在线工具,方便开发者在社交媒体、博客、演示文稿中分享代码。
2. 项目地址
3. 特点
- 渐变背景
- 简洁的界面
- 快速调整background颜色
- 多种主题和编程语言支持
- 自定义背景色、窗口样式
- 支持阴影、行号、水印
- 可导出 PNG/SVG 格式
4. 使用场景
- 社交媒体分享 - Weibo、Twitter、LinkedIn 等平台展示代码
- 技术博客 - 让代码片段更美观
- 技术演讲 - PPT 中插入精美代码图
- 教程制作 - 配合注释说明代码逻辑
- 文档编写 - 增强视觉效果
5. 注意事项
- 不要分享敏感信息(密钥、密码等)
- 图片无法被搜索引擎索引,不利于 SEO
- 大段代码不建议使用,适合片段代码
6. 项目展示
这边直接丢出搭建的docker-compose.yaml文件,熟悉docker环境的小伙伴可以直接拷贝搭建。(环境变量可以自行参考文档按需修改)
version: '3'
services:
codetoimage:
container_name: codetoimage
build: .
ports:
- "3000:3000"
volumes:
- .:/app
- /app/node_modules
command: yarn dev
以下是详细搭建教程。
7. 搭建环境
- 服务器提供商:BandwagonHOST
- 套餐名:
SPECIAL 40G KVM PROMO V5 - CN2 GIA ECOMMERCE
- 服务器配置:2C2G 40GB 2000GB
- 系统:
Debian 13 x86_64
8. 安装系统
服务器初始化:
ssh 登录到远程服务器的 root 用户后再完成以下操作:
-
更新系统已知的软件包列表、升级系统上的所有软件包、移除不再需要的依赖软件包:
apt update && apt upgrade && apt autoremove -y
正经的 Linux 用户不会用 root 干所有的事情,如果这么做的话将会很危险。创建一个普通的用户,并让它可以通过 sudo 指令用 root 权限执行命令是一般的解决方案。
-
在用 sudo 之前,我们需要先安装 sudo 这个软件包:
apt install sudo
-
时间校准
sudo timedatectl set-ntp true # 启用 NTP 服务 sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 将时区设为“亚洲/上海” sudo hwclock --systohc # 将硬件时钟调整到与当前系统时间一致 date -R # 以 RFC 5322 格式输出日期和时间。例如 Mon, 18 Jan 2025 11:04:16 +0800
执行完之后,终端显示的时间如果正确,那么就没问题了。
-
防火墙初始化
sudo apt install ufw sudo ufw enable sudo ufw allow 'OpenSSH'
-
安装相关软件
更新系统已知的软件包列表、升级系统上的所有软件包、移除不再需要的依赖软件包:
sudo apt update && sudo apt upgrade && sudo apt autoremove -y
安装所需要的依赖软件包:
sudo apt install vim wget curl openssl git -y
注意:VPS的内存如果过小,建议设置一下SWAP,一般为内存的1-1.5倍即可,可以让系统运行更流畅!
-
设置SWAP可以用脚本
wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box.sh && chmod +x box.sh && clear && ./box.sh
选择
18
,然后输入你想要扩容的数值即可。
9. 搭建方式
9.1 安装Docker和Docker Compose
安装docker脚本:
curl -fsSL https://get.docker.com | bash -s docker
测试安装是否成功
docker -v
安装Docker-compose
curl -L "https://github.com/docker/compose/releases/download/v2.29.6/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
测试是否安装成功:
docker-compose -v
9.2 反向代理
运行nginx反代和tls的一键脚本
wget -O manage_nginx.sh "https://raw.githubusercontent.com/1keji/AddIPv6/main/manage_nginx.sh" && chmod +x manage_nginx.sh && ./manage_nginx.sh
上面的脚本我没有考虑到单ipv6服务器的情况,下面是一个更新的脚本,增加了对ipv6的支持。由于时间关系,我没有对下面脚本的ipv4功能进行测试,应该不会有问题,如果ipv4万一真有问题的话,可以给我回馈一下,然后先使用上面的脚本吧。请允许我偷个懒,哈哈。
wget -O manage_nginx_v6.sh "https://raw.githubusercontent.com/1keji/AddIPv6/main/manage_nginx_v6.sh" && chmod +x manage_nginx_v6.sh && ./manage_nginx_v6.sh
9.3 TCP BBR
TCP BBR(Bottleneck Bandwidth and Round-trip propagation time)是由 Google 设计的一种拥塞控制算法。自从 Linux Kernel 4.9 开始就引入了该算法,但默认没有启用,所以需要手动开启。
启用该算法仅需在 /etc/sysctl.conf
文件末尾追加两行内容:
sudo bash -c "echo 'net.core.default_qdisc=fq' >> /etc/sysctl.conf"
sudo bash -c "echo 'net.ipv4.tcp_congestion_control=bbr' >> /etc/sysctl.conf"
接下来你需要重启系统或者直接使用 *systemctl* 重载变更。
sudo sysctl --system
您可以使用以下 sysctl 命令验证配置是否生效,如下:
sudo sysctl net.core.default_qdisc
- 若输出结果为
net.core.default_qdisc = fq
,则配置已生效
sudo sysctl net.ipv4.tcp_congestion_control
- 若输出结果为
net.ipv4.tcp_congestion_control = bbr
,则配置已生效
10. 结尾
祝大家用得开心,有问题可以去 GitHub 提 Issues,也可以在评论区互相交流探讨。
同时,有能力给项目做贡献的同学,也欢迎积极加入到项目中来,贡献自己的一份力量!
最后,欢迎大家都去给这个项目点个 star ⭐️
评论区