docker使用code-server搭建开发环境 v2.0

安装docker

docker安装

下载安装nodejs、rust等环境

1、设置安装目录

复制代码
# 创建路径
mkdir /usr/local/node 
# 切换路径
cd /usr/local/node

2、安装nodejs16

复制代码
# 下载
wget https://nodejs.org/dist/latest-v18.x/node-v18.17.1-linux-x64.tar.xz

#解压
tar -xvf node-v18.17.1-linux-x64.tar.xz

# 重命名
mv node-v18.17.1-linux-x64 nodejs18

#设置环境变量
vim /etc/profile

#然后把下面2句话放到文件中
export NODE_HOME=/usr/local/node/nodejs18
export PATH=$NODE_HOME/bin:$PATH
#最后刷新一下配置文件
source /etc/profile
#确认是否安装完成
node -v
npm -v

3、安装rust

使用docker搭建code-server服务且引用宿主机环境

1、下载镜像

复制代码
docker pull codercom/code-server

2、运行和挂载目录

复制代码
docker run -d -u root --name=code-server \
-p 80:8080 -p 3000:3000 -p 8888:8888 \
-v /usr/local/node/nodejs18:/home/vscode/nodejs18/ \
-v /data/vscode/workspace:/home/vscode/workspace \
-v /root/.cargo:/home/vscode/cargo/ \
-v /root/.rustup:/home/vscode/rustup/ \
-e DEFAULT_WORKSPACE=/home/vscode/workspace \
-e PASSWORD=521123 \
-e NODE_HOME=/data/vscode/nodejs18  \
--restart=always --privileged=true codercom/code-server
  • 说一下运行命令

    docker run -d -u root --name=code-server \

    -p 本地端口:容器端口,code-server默认占8080,3000是我写vue3项目用的,8888是写后端用的,记得在安全组开放端口

    -p 80:8080 -p 3000:3000 -p 8888:8888
    #挂载node安装目录进去,把node共享给容器(java,golang,rust等,也可以这样挂载进去)
    -v /usr/local/node/nodejs18:/home/vscode/nodejs18/
    #把项目文件夹放出来,避免删除容器后项目也不见了
    -v /data/vscode/workspace:/home/vscode/workspace
    #映射cargo
    -v /root/.cargo:/home/vscode/cargo/
    #映射rustup
    -v /root/.rustup:/home/vscode/rustup/
    -e DEFAULT_WORKSPACE=/home/coder/project
    #设置code-server登录密码
    -e PASSWORD=123456
    #这个可有可无
    -e NODE_HOME=/data/vscode/nodejs18 \

    restart=always是容器随docker启动而启动,privileged=true,是给容器权限

    --restart=always --privileged=true codercom/code-server

3、配置容器内的环境变量

复制代码
#进入容器
docker exec -it 容器id /bin/bash

#配置容器环境变量
vi /etc/profile
#然后把下面2句话放到文件中
export NODE_HOME=/home/vscode/nodejs18
export PATH=$NODE_HOME/bin:$PATH
export CARGO_HOME=/home/vscode/cargo
export PATH=$CARGO_HOME/bin:$PATH
export RUSTUP_HOME=/home/vscode/rustup
#最后刷新一下配置文件
source /etc/profile
#确认是否安装完成
node -v
npm -v
cargo -V
rustup -V

验证

  • ip:80
  • 然后输入密码就行
相关推荐
taihexuelang10 分钟前
大模型部署
人工智能·docker·容器
2301_8107463120 分钟前
CKA冲刺40天笔记 - day24 Kubernetes Clusterrole 和 Clusterrole Binding
笔记·容器·kubernetes
tap.AI29 分钟前
Deepseek(九)多语言客服自动化:跨境电商中的多币种、多语种投诉实时处理
运维·人工智能·自动化
ling-4535 分钟前
Linux-day09 11
linux·运维·服务器
202321336054 刘36 分钟前
Linux常用命令分类整理
linux·运维·数据库
oMcLin39 分钟前
如何在 Debian 11 上通过配置 LVM 和 RAID 结合,提升大规模存储系统的性能与冗余性
运维·debian
C_心欲无痕1 小时前
网络相关 - Ngrok内网穿透使用
运维·前端·网络
宇钶宇夕1 小时前
CoDeSys入门实战一起学习(四):应用程序运行、监控与调试
运维·自动化
zhyf1191 小时前
零刻AI Max395(Ubuntu 24.04)AMD 显卡监控工具(amdgpu_top)部署手册
linux·运维·ubuntu
谢平康1 小时前
ssh-copy-id 后还是一直需要密码登录的一个解决办法
运维·ssh