Docker部署code-server服务
必备:
-
code-server的文件包(当前版本4.1.0) GitHub项目地址:https://github.com/coder/code-server/releases -
djk环境(我使用了jdk8,jdk11,jdk17) Oracle下载地址:http://jdk.java.net/ -
code-server插件(可以自己去下载包)
- 中文语言插件
- One Dark Pro主题
- vscode icons文件主题
- Bracket Pair Colorizer
- cmake套件
- C/C++套件
- Java套件
- Python套件
官方下载地址:https://marketplace.visualstudio.com/search?term=one%20dark%20pro&target=VSCode&category=All%20categories&sortBy=Relevance 自己下载注意版本对应 懒得自己下载的同学我给大家打包好了
链接:https://pan.baidu.com/s/1cv40InW3QF7dcLwJEoHdew 提取码:6666
创建容器
这里使用Ubuntu容器
运行一个Uubuntu容器
请确保主机的9999端口开放
或者可以自定义端口
docker run -dit -p 9999:80 -v codeserverfiles:/home/codeserverfiles --name code-server ubuntu bash
把用到的文件拷贝到容器中
docker ps
docker cp code de1f:/home
docker cp Learn de1f:/home
进入容器
docker exec -it code-server bash
安装环境
Java环境 :
Java多语言环境切换:
默认环境:jdk11
切换方法:
python环境
-
python27.18 python2
-
python3.8.10 python
nodejs环境
C/C++环境
- gcc 9.4.0
- g++ 9.4.0
- make 4.2.1
apt update -y && apt full-upgrade -y && apt install vim systemctl git curl wget lsof gcc g++ make nodejs npm python3 -y && apt autoremove -y && apt autoclean -y
Python环境配置
cp -a /usr/bin/python3 /usr/bin/python
cp -a /usr/bin/python2 /usr/bin/python
配置多版本java环境
mv java/ /usr/local/
chmod -R 777 /usr/local/java
vim ~/.bashrc
export JAVA8_HOME=/usr/local/java/jdk-8
export JAVA11_HOME=/usr/local/java/jdk-11
export JAVA17_HOME=/usr/local/java/jdk-17
export JAVA_HOME=${JAVA11_HOME}
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:${CLASSPATH}
export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH
alias jdk8='export JAVA_HOME=$JAVA8_HOME && export JRE_HOME=$JAVA_HOME/jre && export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH && export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH'
alias jdk11='export JAVA_HOME=$JAVA11_HOME && export JRE_HOME=$JAVA_HOME/jre && export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH && export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH'
alias jdk17='export JAVA_HOME=$JAVA17_HOME && export JRE_HOME=$JAVA_HOME/jre && export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH && export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH'
source ~/.bashrc
java --version
配置code-server
解压code-server包
tar -zvxf code-server-4.1.0-linux-amd64.tar.gz
mv code-server-4.1.0-linux-amd64 code-server
给code-server安装插件
- 中文语言插件
- Python套件
- Java套件
- C/C++套件
- cmake套件
- vscode icons文件主题
- Markdown All in one插件
- One Dark Pro主题
- Bracket Pair Colorizer插件
mv EP/* code-server/bin/
./code-server --install-extension CoenraadS.bracket-pair-colorizer-1.0.62.vsix && ./code-server --install-extension ms-python-release.vsix && ./code-server --install-extension ms-vscode.cmake-tools-1.10.2.vsix && ./code-server --install-extension ms-vscode.cpptools-1.9.3@linux-x64.vsix && ./code-server --install-extension twxs.cmake-0.0.17.vsix && ./code-server --install-extension vscjava.vscode-java-pack-0.21.0.vsix && ./code-server --install-extension vscode-icons-team.vscode-icons-11.10.0.vsix && ./code-server --install-extension vscode-language-pack-zh-hans-v1.63.0.vsix && ./code-server --install-extension yzhang.markdown-all-in-one-3.4.0.vsix && ./code-server --install-extension zhuangtongfa.material-theme-3.13.20.vsix
编写快速启动/停止脚本
编写一个启动脚本
vim start.sh
#! /bin/bash
export PASSWORD="passwd"
nohup ./code-server --port 80 --host 0.0.0.0 --auth password > code-server.log 2>&1 &
编写停止脚本
vim shut.sh
#! /bin/bash
pgrep -f code-server > pid.txt && head -n 1 pid.txt | xargs kill -9 && rm pid.txt && rm code-server.log
启动/停止
sh start.sh
sh shut.sh
code-server设置
设置语言
Ctrl + Shift + P
configure display language
选择zh-cn,重启窗口
效果
- 浏览器访问:主机ip:9999
- 输入你设定的密码
Docker镜像
对于懒得自己配置的小伙伴我已经把容器打包镜像上传了
DockerHub项目地址:https://hub.docker.com/repository/docker/howhacker/code-server
拉取
docker pull howhacker/code-server:1.0
启动
docker run -dit -p [port]:80 --name code-server howhacker/code-sever:1.0 bash
docker exec -it code-server bash
cd /home/code-server/bin
sh start.h
sh shut.sh
|