Docker部署web端vscode
准备纯净的centos7云服务器由于疫情的原因,阿里云为大学生准备了免费的ECS云服务器,我在寒假时就领取了,而且在服创比赛中将我们的网页部署上去了,当时使用的nginx+wsgi+flask。还记得那时安装nginx时非常费劲,因为yum里没有。后来即使部署成功了,但重启了一次服务,之后就经常挂掉,至今没找到解决方案。今天将我的服务器重置了一下,告别那个项目了。服务器重置的办法是:先在控制台停机
·
准备纯净的centos7云服务器
由于疫情的原因,阿里云为大学生准备了免费的ECS云服务器,我在寒假时就领取了,而且在服创比赛中将我们的网页部署上去了,当时使用的nginx+wsgi+flask。还记得那时安装nginx时非常费劲,因为yum里没有。后来即使部署成功了,但重启了一次服务,之后就经常挂掉,至今没找到解决方案。今天将我的服务器重置了一下,告别那个项目了。服务器重置的办法是:先在控制台停机,然后找到配置里有个更新系统盘,就好了。现在centos7纯净了,比重装虚拟机快多了!
在服务器端安装docker
安装docker有个dockerfile可以一条命令就安装成功,
curl -sSL https://get.daocloud.io/docker | sh
但是我失败了,所以,还是用原始的办法。
1.
yum install -y yum-utils device-mapper-persistent-data lvm
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum install docker-ce
- 启动docker守护进程
systemctl start docker.service
- 查看docker服务状态
systemctl status docker.service
拉取镜像并运行
- 建立项目目录
mkdir -p /home/coder/project
- 开始docker登场
docker run -it -p 80:8080 --name code -v "/home/coder/project:/home/coder/project" codercom/code-server:latest
这里会比较耗时,成功后,会提示信息(info)注意到密码被放在了 ~/.config/code-server/config.yaml这个文件里了,其实是在容器里。
- 寻找密码
另外再开一个终端
docker ps -a # 查看container id
docker exec -it [container id] /bin/bash # 开启交互式container
ls -a # 注意要加-a ,否则看不到隐藏文件
vim ~/.config/code-server/config.yaml # 记录下密码
使用web端vscode
在浏览器地址栏输入服务器公网ip
输入密码就可以进入vscode了。
遇到的问题
- 如果向上面那样直接使用docker run -it …,那么运行成功后,如果这个交互式窗口关掉或者ssh自动断掉以后,那么这个容器就退出了,所以网页是访问不到的。
解决办法:
docker ps -a # 查看container id
docker start [container id] # 再次开启container
这样即使断开ssh连接,container依然运行
2. 发现密码太长了,改成自己的密码吧。那个密码文件改过之后不管用,不知道应该怎么改。而且发现,container建立好以后,密码就不变了。
3. 删容器之前必须先停掉它
docker stop [container id]
docker rm [container id]
更多推荐
已为社区贡献1条内容
所有评论(0)