将虚拟机变成服务器

背景:车载开发,缺少编译服务器,为避免每个人都安装虚拟机,想把我的虚拟机变成服务器,方便同事使用。

1. 配置虚拟机端口转发

在这里插入图片描述

2. 编译docker容器

2.1安装docker

sudo apt install -y docker.io                                               
sudo systemctl start docker                                                   
sudo systemctl enable docker 

2.2 配置Dockerfile

FROM ubuntu:22.04

# 安装基础开发工具
RUN apt-get update && apt-get install -y \
    build-essential git python3 python3-pip \
    wget curl tar xz-utils g++ make \
    file vim-common openssh-client \
    cmake make \
    && rm -rf /var/lib/apt/lists/*

2.3 编译 Docker 镜像的命令

sudo docker build -t ubuntu2:dev /home/cc/docker/ubuntu2

编译成功,查看镜像包
sudo docker images

2.4 设置启动脚本start_containers.sh

#!/bin/bash
# 启动所有用户容器

# 如果容器不存在,则创建并启动
for user in user1 user2; do
    if ! docker ps -a --format '{{.Names}}' | grep -q "$user-container"; then
        docker run -d --name $user-container --restart=always --memory=30g --cpus=2 \
        -u $(id -u $user):$(id -g $user) \
        -w /workspace \
        -v /home/$user/workspace:/workspace \
        -v /home/cc/sdk_2025_11_24:/home/cc/sdk_2025_11_24:ro \
        -v /home/cc/v5/kanziSDK_code:/opt/kanziSDK:ro \
        -v /etc/passwd:/etc/passwd:ro \
        -v /etc/group:/etc/group:ro \
        ubuntu2:dev sleep infinity
    else
        docker start $user-container
    fi
    # 进去改权限                                                                  
    #docker exec $user-container sudo chown -R $(id -u $user):$(id -g $user) /workspace 
done

停止所有容器:

sudo docker stop user1-container user2-container

删除所有容器:

sudo docker rm user1-container user2-container

启动容器
sudo ./start_containers.sh
记得提前把user账户创建好

3. 使用虚拟机

3.1 ssh登录

ssh user1@ip -p 22022

3.2 sftp访问

使用 WinSCP 或 FileZilla:

  • 主机: xx
  • 端口: 22022
  • 用户名: user1
  • 密码: user1的密码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值