创建一个容器
在爱快中添加一个 容器 ‘alpine-docker-cli-1’ 使用镜像 alpine:latest
高级设置挂载目录 /var/run/docker.sock
到容器的/var/run/docker.sock
配置容器
打开容器控制台
修改源更新安装ssh 密钥 启动文件等
1
2
3
4
5
6
7
8
9
10
11
12
13
| echo "https://mirrors.tuna.tsinghua.edu.cn/alpine/latest-stable/main" > /etc/apk/repositories && \
echo "https://mirrors.tuna.tsinghua.edu.cn/alpine/latest-stable/community" >> /etc/apk/repositories && \
apk update && \
apk add --no-cache openssh tzdata && \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
sed -i "s/#PermitRootLogin.*/PermitRootLogin yes/g" /etc/ssh/sshd_config && \
ssh-keygen -t dsa -P "" -f /etc/ssh/ssh_host_dsa_key && \
ssh-keygen -t rsa -P "" -f /etc/ssh/ssh_host_rsa_key && \
ssh-keygen -t ecdsa -P "" -f /etc/ssh/ssh_host_ecdsa_key && \
ssh-keygen -t ed25519 -P "" -f /etc/ssh/ssh_host_ed25519_key && \
echo "root:admin" | chpasswd && \
echo "/usr/sbin/sshd -D" > /autoboot.sh && \
echo "tail -f /dev/null" > /autoboot.sh
|
上面的命令 是让我们能创建一个支持ssh的docker,但是还不是我们想要的
进阶,用docker里面的cli 操作宿主的docker
也就是 添加一行apk add –no-cache docker-cli
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| echo "https://mirrors.tuna.tsinghua.edu.cn/alpine/latest-stable/main" > /etc/apk/repositories && \
echo "https://mirrors.tuna.tsinghua.edu.cn/alpine/latest-stable/community" >> /etc/apk/repositories && \
apk update && \
apk add --no-cache docker-cli && \
apk add --no-cache openssh tzdata && \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
sed -i "s/#PermitRootLogin.*/PermitRootLogin yes/g" /etc/ssh/sshd_config && \
ssh-keygen -t dsa -P "" -f /etc/ssh/ssh_host_dsa_key && \
ssh-keygen -t rsa -P "" -f /etc/ssh/ssh_host_rsa_key && \
ssh-keygen -t ecdsa -P "" -f /etc/ssh/ssh_host_ecdsa_key && \
ssh-keygen -t ed25519 -P "" -f /etc/ssh/ssh_host_ed25519_key && \
echo "root:admin" | chpasswd && \
echo "/usr/sbin/sshd -D" > /autoboot.sh && \
echo "tail -f /dev/null" >> /autoboot.sh
|
我打包了一个基础的docker镜像
只安装了 openssh tzdata 时区 nano
默认用户名 root 密码 root ssh端口2222
tar.gz格式的,你可以自己导入到镜像
使用命令参考
1
| cat alpine-sshd2222.tar.gz | docker import - alpine:sshd-autoboot.sh2222
|
1
| docker run -i -t -d --name alpine-mengzhong --network host --privileged=true --restart=always alpine:sshd-autoboot.sh2222 sh /autoboot.sh
|
下载地址: https://github.com/joyanhui/file.leiyanhui.com/raw/main/pve-unraid-kvm/alpine-sshd2222.tar.gz
以后可能也会打包一个debian的镜像,不过体积就比较大,可能会放到云盘
本文参考 https://cloud.tencent.com/developer/article/1683604