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
相关推荐
焱焱枫26 分钟前
Linux疑难杂症诊断利器:深入解析 fuser 命令
linux·运维·服务器
深思慎考35 分钟前
Ubuntu 系统 RabbitMQ 安装指南与使用(含 C++ 客户端与 SSL 错误解决)
c++·ubuntu·rabbitmq·github·rabbitmqpp
博语小屋1 小时前
Linux进程信号(壹)_产生信号
linux·运维·服务器
轻松Ai享生活1 小时前
【Linux】VFS 虚拟文件系统 详解
linux
LCG元1 小时前
Linux环境Python生态速建指南:包管理+虚拟隔离+深度调优
linux
大白的编程日记.1 小时前
【Linux学习笔记】线程同步与互斥之生产者消费者模型
linux·笔记·学习
Knight_AL1 小时前
Spring Boot 中使用自定义注解和 AOP 实现微服务日志记录(包含 URL、状态码和耗时信息)
linux·spring boot·微服务
养海绵宝宝的小蜗1 小时前
Linux 例行性工作任务(定时任务)知识点总结
linux·运维·服务器
乌萨奇也要立志学C++2 小时前
【Linux】基础IO(二)深入理解“一切皆文件” 与缓冲区机制:从原理到简易 libc 实现
linux·运维·服务器
Ronin3052 小时前
【Linux网络】封装Socket
linux·网络·socket·网络通信