通过docker创建自己的kms服务容器,并部署到Linux服务器或者树莓派上
- 本教程实现了基于docker创建自己的 kms 容器,并实现开机自启动的功能
- kms脚本来自https://github.com/dakkidaze/one-key-kms.git
首先进入home创建文件夹
mkdir ~/kms-tmp && cd ~/kms-tmp
下载kms脚本
git clone https://github.com/dakkidaze/one-key-kms.git
创建临时容器
vim Dockerfile
1
2
3
4
5
6
7
8FROM arm32v7/ubuntu:18.04
COPY one-key-kms /home/root/one-key-kms
WORKDIR /home/root/one-key-kms
RUN apt update && apt install vim -y && apt install curl -y
RUN chmod a+x *.sh
RUN echo "done kms!"
创建镜像
docker build . -t kms-tmp:v1
运行创建的容器
docker run -it kms-tmp:v1
- 执行
./one-key-kms-debian.sh
进行安装,自动下载依赖的组件
完成后手动退出容器,将容器创建为镜像
docker commit $container_id kms/kms-tmp
开始创建kms镜像
mkdir ~/kms && cd ~/kms
vim start_kms.sh
#!/bin/bash /home/root/one-key-kms/kms.sh start ## 阻塞主程序 防止docker容器启动后退出 watch -n 100 -d 'df -h'
1
2
3
4
5
6
7- ` vim Dockerfile ` 编写Dockerfile 需要暴露 1688 端口
```shell
FROM kms/kms-tmp:latest
WORKDIR /home/root/one-key-kms
COPY start_kms.sh /home/root/one-key-kms
RUN chmod a+x start_kms.sh
EXPOSE 1688
容器创建完成之后运行即可
docker run -dit -p 1688:1688 \ --name kms \ --entrypoint "/home/root/one-key-kms/start_kms.sh" \ --restart=always kms:v1
--restart=always
是指定容器自动启动
windows下激活脚本
进入system32目录下
cd %SystemRoot%/system32
设置服务器ip
slmgr /skms kms服务器ip
激活产品
slmgr /ato
查看激活信息
slmgr /xpr
office激活
进入安装目录
- 设置激活服务器
cscript ospp.vbs /sethst:$kmsip
- 激活产品
cscript ospp.vbs /act