Dockerfile.V1
bash
# Dockerfile
FROM ubuntu:22.04
# 避免交互式安装
ENV DEBIAN_FRONTEND=noninteractive
RUN cp /etc/apt/sources.list /etc/apt/sources.list.backup && \
cat > /etc/apt/sources.list <<EOF
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted
deb http://mirrors.aliyun.com/ubuntu/ jammy universe
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates universe
deb http://mirrors.aliyun.com/ubuntu/ jammy multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted
deb http://mirrors.aliyun.com/ubuntu/ jammy-security universe
deb http://mirrors.aliyun.com/ubuntu/ jammy-security multiverse
EOF
# 更新软件包并安装SSH服务
RUN apt-get update && \
apt-get install -y openssh-server sudo && \
mkdir /var/run/sshd && \
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config && \
echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config && \
echo 'root:root' | chpasswd && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# 暴露所有需要的端口
EXPOSE 22
# 启动SSH服务并运行init
CMD ["/sbin/init"]
包含aliyun源
包含sshd服务
构建镜像
bash
docker build -t ubuntu-ssh:22.04 -f Dockerfile.V1 .
日志
bash
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:fe4ef1b8b9c1b74c16b077e032ae49f815813ce20f363f79aedd9c5b24d42b4f 0.0s
=> => naming to docker.io/library/ubuntu-ssh:22.04
docker images
bash
(base) [root@ai-server ubuntu]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu-ssh 22.04 fe4ef1b8b9c1 1 minutes ago 190MB
创建容器
bash
docker run -d \
--name ssh_v1 \
-p 28521:22 \
--privileged \
--restart unless-stopped \
ubuntu-ssh:22.04
端口28521可自己调整
主机开发端口(我的是CentOS)
bash
iptables -A INPUT -p tcp --dport 28521 -j ACCEPT
可以通过28521访问了
用户名/密码 root/root
