This commit is contained in:
spiritlhl
2023-08-27 01:52:51 +00:00
parent 16bbaa1089
commit 5fa2f693a6
6 changed files with 67 additions and 28 deletions

View File

@@ -8,7 +8,10 @@ There are two methods of building
## Setting Up Standalone
Download the Script
- Generate only one docker
- Can be configured to bind a separate IPV6 address, but requires a docker previously installed using the environment installation command of this set of scripts, and requires the host to be bound to at least the /64 IPV6 subnet
### Download the Script
Command:
@@ -16,16 +19,16 @@ Command:
curl -L https://raw.githubusercontent.com/spiritLHLS/docker/main/scripts/onedocker.sh -o onedocker.sh && chmod +x onedocker.sh
```
### Example
Run
```
./onedocker.sh name cpu memory password sshport startport endport system
./onedocker.sh name cpu memory password sshport startport endport system independent_ipv6
```
Currently, the system only supports selecting Alpine or Debian, with Debian being the default choice.
### Example
The following is the information for the created example container:
| Attribute | Value |
@@ -38,11 +41,14 @@ The following is the information for the created example container:
| SSH Port | 25000 |
| Port Range for Internal and External Mapping | 34975 to 35000 |
| Operating System | debian |
| Whether to bind a separate IPV6 address| N |
```shell
./onedocker.sh test 1 512 123456 25000 34975 35000 debian
./onedocker.sh test 1 512 123456 25000 34975 35000 debian N
```
### Related operations
Deleting the test container
```shell
@@ -59,7 +65,7 @@ docker exec -it test /bin/bash
To exit the container, simply execute ```exit```.
### Inquiry Information
Inquiry Information
```shell
cat Container_Name(change me)
@@ -71,6 +77,8 @@ The output format is
Container_Name SSH_Port Root_Password Number_of_Cores Memory Start_of_Public_Port End_of_Public_Port
```
The docker's ipv6 address can only be looked up within the container itself, it doesn't exist in the docker's configuration
## Batch Deployment
- Run inheritance configuration generation multiple times in bulk.
@@ -94,12 +102,13 @@ The output format is
Container_Name SSH_Port Root_Password Number_of_Cores Memory Start_of_Public_Port End_of_Public_Port
```
One line corresponds to information about a container.
One line corresponds to information about a container, the docker's ipv6 address can only be looked up within the container itself, it doesn't exist in the docker's configuration.
## Uninstall all Docker containers and images
The following command offload ignores ndpresponder to prevent IPV6 configuration failure
```shell
docker rm -f $(docker ps -aq); docker rmi $(docker images -aq)
rm -rf dclog
ls
docker ps -aq | grep -v 'ndpresponder' | xargs -r docker rm -f
docker images -aq | grep -v 'ndpresponder' | xargs -r docker rmi
```

View File

@@ -2,16 +2,17 @@
outline: deep
---
# Preface
Support for running Docker virtualization on various systems, including Linux, Android, and Windows.
## Environment Setup
- Check the environment
- Install Docker and other prerequisite components
- Download some default configuration scripts required by default
- Detect the system environment and install the corresponding components
- Install docker and docker-compose.
- Download some configuration scripts required by default
- Detect if there is an IPV6 address, check if it is greater than or equal to /64, and if so, configure the docker's ipv6 network.
- If all the above conditions are met, create ndpresponder docker and radvd so that IPV6 allocation supports ndp broadcasting and auto-allocation.
Command:

View File

@@ -1,3 +1,7 @@
---
outline: deep
---
## 准备工作
需要虚拟化出服务器,你需要:

View File

@@ -1,10 +1,17 @@
---
outline: deep
---
# 前言
两种开设方式
## 单独开设
下载脚本
- 只生成一个docker
- 可配置绑定独立的IPV6地址但需要先前使用本套脚本的环境安装命令安装的docker且需要宿主机至少绑定了/64的IPV6子网
### 下载脚本
国际
@@ -18,15 +25,19 @@ curl -L https://raw.githubusercontent.com/spiritLHLS/docker/main/scripts/onedock
curl -L https://ghproxy.com/https://raw.githubusercontent.com/spiritLHLS/docker/main/scripts/onedocker.sh -o onedocker.sh && chmod +x onedocker.sh
```
运行
### 示例
运行支持的变量
```
./onedocker.sh name cpu memory password sshport startport endport system
./onedocker.sh name cpu memory password sshport startport endport system independent_ipv6
```
目前system仅支持选择alpine或debian默认是debian
### 示例
```shell
./onedocker.sh test 1 512 123456 25000 34975 35000 debian N
```
以下为开设的示例容器的信息:
@@ -40,11 +51,9 @@ curl -L https://ghproxy.com/https://raw.githubusercontent.com/spiritLHLS/docker/
| SSH端口 | 25000 |
| 内外网映射端口一致的区间 | 34975到35000 |
| 系统 | debian |
| 是否绑定独立的IPV6地址 | N |
```shell
./onedocker.sh test 1 512 123456 25000 34975 35000 debian
```
### 相关操作
删除示例
@@ -62,7 +71,7 @@ docker exec -it test /bin/bash
要退出容器就执行```exit```退出。
### 查询信息
查询已开设的信息
```shell
cat 容器名字
@@ -71,14 +80,18 @@ cat 容器名字
输出格式
```
容器名字 SSH端口 登陆的root密码 核数 内存 外网端口起 外网端口止
容器名字 SSH端口 登陆的root密码 核数 内存 外网端口起 外网端口止
```
docker的ipv6地址只能在容器内自己查询在docker的配置中是不存在的
## 批量开设
- 批量多次运行继承配置生成
- 生成多个时为避免SSH连接中断建议在screen中执行
## 运行
国际
```shell
@@ -103,9 +116,15 @@ cat dclog
容器名字 SSH端口 登陆的root密码 核数 内存 外网端口起 外网端口止
```
一行一个容器对应的信息
一行一个容器对应的信息docker的ipv6地址只能在容器内自己查询在docker的配置中是不存在的
## 卸载所有docker容器和镜像
以下命令卸载会忽略ndpresponder以防止IPV6的配置失效
```shell
docker rm -f $(docker ps -aq); docker rmi $(docker images -aq)
docker ps -aq | grep -v 'ndpresponder' | xargs -r docker rm -f
docker images -aq | grep -v 'ndpresponder' | xargs -r docker rmi
rm -rf dclog
ls
```

View File

@@ -1,3 +1,7 @@
---
outline: deep
---
# 使用Docker一键安装某些容器的脚本
每个容器都有对应的配置要求,自行查看,内存不够的用[这个](https://virt.spiritlhl.net/guide/docker_install.html#%E5%BC%80%E8%AE%BE%E8%99%9A%E6%8B%9F%E5%86%85%E5%AD%98)开设虚拟内存补足也行

View File

@@ -9,9 +9,11 @@ outline: deep
## 环境预设
- 检测环境
- 安装docker和其他预制组件
- 检测系统环境,安装对应组件
- 安装docker和docker-compose
- 下载默认需要的一些配置脚本
- 检测如果存在IPV6地址检测其是否大于或等于/64如果符合条件则配置docker的ipv6的网络
- 如果上述条件都符合创建ndpresponder的docker和radvd使得IPV6的分配支持ndp广播和自动分配
国际