docker搭建zerotier

使用Docker搭建Zerotier可以使部署和管理Zerotier网络变得更加简单和可靠。

先到官网申请账号, 并且创建一个网络, 创建网络后会得到一个ID

使用Docker CLI:

首先,确保已经安装并配置好Docker。然后,执行以下命令来创建一个Zerotier容器:

shell 复制代码
docker pull bltavares/zerotier
shell 复制代码
docker run --device=/dev/net/tun \
--name zerotier-one \
--net=host \
--restart=unless-stopped \
--cap-add=NET_ADMIN \
--cap-add=SYS_ADMIN \
-v /var/lib/zerotier-one:/var/lib/zerotier-one \
bltavares/zerotier:latest
shell 复制代码
docker exec zerotier-one zerotier-cli join [网络ID]

参数说明:

  • -d:将容器设置为后台运行。
  • --name zerotier-one:为容器指定一个名称。
  • --cap-add=NET_ADMIN:为容器授予网络管理的能力。
  • --device=/dev/net/tun:将宿主机的TUN设备映射到容器内。
  • -v /var/lib/zerotier-one:/var/lib/zerotier-one:将容器内的Zerotier数据目录映射到宿主机,以便数据持久化。
  • --restart=unless-stopped:配置容器在非停止状态下自动重启。
    注意事项:

确保替换 网络ID 为实际的Zerotier网络ID。

确保设置正确的访问权限和安全措施,以保护Zerotier容器的安全性。

配置宿主机的防火墙以允许Zerotier流量通过。

使用Docker Compose:

首先,在项目目录下创建一个名为 docker-compose.yml 的文件,并添加以下内容:

yaml 复制代码
version: '3.9'
services:
    zerotier:
        image: 'bltavares/zerotier:latest'
        volumes:
            - '/var/lib/zerotier-one:/var/lib/zerotier-one'
        cap_add:
            - SYS_ADMIN
            - NET_ADMIN
        restart: unless-stopped
        container_name: zerotier-one
        devices:
            - /dev/net/tun

然后,通过执行以下命令来启动Zerotier容器:

docker-compose up -d

注意事项:

确保替换 网络ID 为实际的Zerotier网络ID。

确保在项目目录下执行 docker-compose up -d 命令。

相关推荐
呆萌的代Ma16 分钟前
解决docker网络问题,通过GitHub Actions打包dockerfile
docker·容器·github
qq_4523962324 分钟前
第十七篇:《Docker 日志管理:驱动配置与集中收集》
运维·docker·容器
SilentSamsara34 分钟前
Python 服务的 K8s 部署:HPA/ConfigMap/Secret 完整配置
开发语言·python·青少年编程·容器·kubernetes
Plastic garden43 分钟前
K8s(1)前置ansible准备环境
容器·kubernetes·ansible
lwx9148521 小时前
Kubernets-单节点部署k8s环境
云原生·容器·kubernetes
Dontla1 小时前
WSL2 docker-desktop发行版介绍(用于运行Docker引擎(Docker Engine))(docker-desktop-data)
运维·docker·容器
小蜗牛的路1 小时前
Linux redhat 7在线安装docker、下载docker依赖、离线安装docker
linux·运维·docker
qq_452396231 小时前
第十六篇:《Docker 安全基础:容器隔离与权限控制》
安全·docker·容器
Plastic garden1 小时前
Docker Compose 的 RuoYi nginx exporter Prometheus + Alertmanager + 钉钉告警
nginx·docker·prometheus
少司府1 小时前
C++进阶:map和set的使用
开发语言·数据结构·c++·容器·stl·set·map