Ubuntu下用Docker部署群晖系统---Virtual DSM --zerotier实现连接

Ubuntu下用Docker部署群晖系统---Virtual DSM --zerotier实现连接

1. Docker 安装

安装最新docker

bash 复制代码
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo docker run hello-world

2.docker-compose 安装

bash 复制代码
sudo pip install docker-compose

测试安装是否成功

bash 复制代码
docker-compose --version

3. virtual dsm的dokcer-compose.yml文件撰写

bash 复制代码
---
version: '2.2'
services:
  dsm:
    container_name: dsm
    image: vdsm/virtual-dsm
    restart: always
    environment:
      DISK_SIZE: "200G"
    devices:
      - /dev/kvm
    cap_add:
      - NET_ADMIN
    ports:
      - 5001:5000
    volumes:
      - /mnt/dataDisk/MyNAS:/storage
    stop_grace_period: 2m

需要自行更改的参数:
DISK_SIZE: 磁盘大小
ports:串口位置
volumes:储存位置,更改/mnt/dataDisk/MyNAS即可

其中,为了保证电脑开机自启动,添加参数restart: always

4. 启动docker-compose

启动

bash 复制代码
docker-compose up

可能出现报错Get https://registry-1.docker.io/v2/library/mysql: net/http: TLS handshake timeout,请对docker的源进行更换

bash 复制代码
sudo vim /etc/docker/daemon.json

写入:

bash 复制代码
{
        "registry-mirrors": [
                "https://w14ki3ju.mirror.aliyuncs.com",
                "http://hub-mirror.c.163.com",
                "https://registry.docker-cn.com",
                "https://docker.m.daocloud.io"
        ]
}

再次执行docker-compose up完成镜像拉取和启动

即可通过浏览器输入http://localhost:5001/进行群晖系统设置和登录

5. zerotier实现内网穿刺

在zerotier官网https://www.zerotier.com/进行注册登录

ubuntu上安装zerotier
bash 复制代码
curl -s https://install.zerotier.com | sudo bash

安装成功后会提示:Success! You are Zerotier address

可以通过以下指令更新:

bash 复制代码
sudo apt-get update zerotier-one
bash 复制代码
首先,在zerotier官网创建网络,并获得networkid
然后,在ubuntu下使用指令加入网络
sudo zerotier-cli join [xxx networkid xx]

在其他设备也通过networkid加入zerotier,并打开权限,即完成了穿刺

补充:docker常用指令:

启动服务:

bash 复制代码
docker-compose up    #在前台启动服务

docker-compose up -d    #启动服务在后台运行

docker-compose up --build    #重新构建服务

停止并移除服务、网络、卷和默认镜像:

bash 复制代码
docker-compose down    #停止并移除服务

docker-compose down -v    #停止服务并移除卷

暂停服务:

bash 复制代码
docker-compose pause

取消暂停服务:

bash 复制代码
docker-compose unpause

查看服务日志:

bash 复制代码
docker-compose logs    #查看所有服务日志

docker-compose logs -f    #实时查看日志

启动服务:

bash 复制代码
docker-compose start

停止服务:

bash 复制代码
docker-compose stop

重启服务:

bash 复制代码
docker-compose restart

查看当前服务状态:

bash 复制代码
docker-compose ps

进入后台运行的容器:

bash 复制代码
docker-compose exec 容器名 /bin/sh

拉取镜像:

bash 复制代码
 docker-compose pull

构建镜像:

bash 复制代码
docker-compose build

删除或停止容器:

bash 复制代码
docker-compose rm

本地系统和容器之间复制文件/文件夹:

bash 复制代码
docker-compose cp
补充:ubuntu下zerotier常用指令

启动/停止服务

bash 复制代码
// 启动
sudo systemctl start zerotier-one.service
// 停止
sudo systemctl stop zerotier-one.service

加入网络

bash 复制代码
// your-networkid 是你的网络ID
sudo zerotier-cli join your-networkid

查看网络列表

bash 复制代码
sudo zerotier-cli listnetworks

查看当前网络状态

bash 复制代码
sudo zerotier-cli status

离开网络

bash 复制代码
sudo zerotier-cli leave your-networkid

设置开启自启动:最好设置一下,这样只需要启动系统,就会自动运行服务

bash 复制代码
sudo systemctl enable zerotier-one.service
相关推荐
lwx91485216 小时前
Linux-Shell算术运算
linux·运维·服务器
somi716 小时前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白16 小时前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
黄昏晓x17 小时前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪17 小时前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神17 小时前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习
2401_8920709817 小时前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象
航Hang*17 小时前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
-ONLY-¥17 小时前
PostgreSQL运维全攻略:从基础操作到远程配置
linux
独小乐17 小时前
009.中断实践之实现按键测试|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·arm