Dockerfile制作基础镜像【JAVA】、【SSH】、【VIM】

创建一个包含 JDKSSH、和 Vim 的基础 Docker 镜像涉及几个步骤。以下是详细操作步骤:

1、准备工作

  • 确保你已经安装了 Docker,并且能够在命令行中使用 Docker
  • 创建一个新目录,用于存放Dockerfile和其他相关文件。
mkdir -p /opt/image

2. 创建 Dockerfile

在创建的目录中,新建一个名为 Dockerfile 的文件,此文件将包含用于构建镜像的指令。

第一步,进入创建的目录中:

cd /opt/image

第二步,新建Dockerfile 文件

vi Dockerfile 

3. 编写 Dockerfile

在 Dockerfile 中添加以下内容:

root:password : password 为当前镜像密码,可修改;如:root:123456

# 使用基础镜像,可以选择Debian或者Ubuntu
FROM ubuntu:20.04

# 设置环境变量
ENV DEBIAN_FRONTEND=noninteractive

# 更新包列表并安装必要的软件
RUN apt-get update && \
    apt-get install -y \
    openjdk-11-jdk \
    openssh-server \
    vim \
    && apt-get clean

# 设置 SSH 服务
RUN mkdir /var/run/sshd
RUN echo 'root:password' | chpasswd  # 设置root用户密码
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -i 's/UsePAM yes/UsePAM no/' /etc/ssh/sshd_config

# 安装JDK
ENV JAVA_HOME /usr/lib/jvm/java-11-openjdk-amd64
ENV PATH $JAVA_HOME/bin:$PATH

# SSH 端口暴露
EXPOSE 22

# 设置默认命令来运行SSH服务
CMD ["/usr/sbin/sshd", "-D"]

4. 构建镜像

Dockerfile 所在目录,使用以下命令来构建镜像:

docker build -t my_base_image .

注: my_base_image 是镜像的名字,你可以根据需要修改。

5. 运行容器

使用刚创建的镜像运行一个新的容器,并映射 SSH 端口:

docker run -d -p 2222:22 --name my_container my_base_image

: -p 2222:22 将主机的 2222 端口映射到容器的 22 端口,my_container 是容器的名字。

6. 测试 SSH 连接

通过以下命令来测试 SSH 连接:

使用密码 password 登录(可以在 Dockerfile 中更改 )。

ssh root@localhost -p 2222

访问不通时请先排查:防火墙、是否配置安全策略等

7. 检查 JDK 和 Vim

java -version
vim --version
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值