Home
avatar

静静

华为云鲲鹏安装Docker跑ShareLatex【失败放弃】

双十一当我舍友在纠结剁手买哪条漂亮裙子,哪个闪亮包包时,我在纠结剁手买哪家的服务器。双十一周我都在疯狂剁手服务器,就是为了能搞一个 ShareLatex 玩玩,之前阿里的学生机跑的服务太多,带不动了。我数数,弄了个博客,一个 Nodeppt, 一个 Nextcloud 网盘,一个图床,一个 JupyterLab

魔装C内核与 grads 。

四个红圈,也是难为它了

如果能再有一台服务器就好了,可是阿里的学生认证只能用一次,而阿里云学生机以外的套餐仿佛在嘲讽我的钱包一般。

呵呵,750的代金券我也要买得起啊

于是,我盯上了其他两大云服务器商腾讯和华为,果然也有学生套餐。腾讯云的不说了,初次体验不太好,带宽低,啥都干不了。华为云的我趁着活动抢到一个免费15天的鲲鹏。

北冥有鱼,其名为鲲,化而为鸟,其名为鹏

But,毕竟不是熟悉的Ubuntu,熟悉的X86,要吃饭还得自己造锅。我记得阿里的镜像中像camke,gcc一类的东西时默认安装的,上手就用,我从来没有操心过这些底层一类的问题。我一般的习惯会安装一个宝塔面板或者WDCP,安装Docker-compose的时候也各种报错,直到我看到WDPC的提示,没有安装gcc!即使这样,饭还是要吃,锅那就造吧。

安装Docker

参考鲲鹏云服务器 Docker 安装指南(CentOS 7.5/Ubuntu 18.04)此处使用Centos7.5,我从Ubuntu换过来的,Ubuntu下面的问题太烦,走不通,我也懒得去纠结了。

这么多报错,让人头秃

果断换系统,也就三分钟

行得通的步骤【失败了,留着以后复盘】

环境准备 安装GCC

默认的yum源非常慢,参考CentOS 7 rpm安装gcc 详解可以戳下面这个链接

http://mirror.centos.org/altarch/7/os/aarch64/Packages/ 下载如下几个rpm包,注意与图中不同的时不要x86_64aarch64

原帖的x86_64

华为云鲲鹏适用的

下载好后,用Winscp或者MobaXterm的左边栏文件夹上传到服务器,在终端输入如下命令,会自动按顺序安装。

rpm -Uvh *.rpm --nodeps --force

GCC安装成功

安装Dockers

yum repolist all

查询仓库状态,设置为“enabled”状态

yum-config-manager --enable "CentOS-7 - Extras - mirrors.huaweicloud.com"

这一步有时会提示yum-config-manager: command not found ,参考CentOS7: yum-config-manager: command not found解决方案如下:

yum -y install yum-utils

yum-config-manager完了以后,执行以下命令安装Docker的依赖包。

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

卸载旧版本,一般新机器不需要,啥都没有卸啥。给需要重装的朋友:

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate

配置软件仓库。

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装docker-ce。

sudo yum install docker-ce docker-ce-cli containerd.io

我到这一步就成功了,如果还没有成功或者网速太慢的朋友可以参考原帖鲲鹏云服务器 Docker 安装指南(CentOS 7.5/Ubuntu 18.04)通过下载软件包安装的方式安装。

测试Docker

docker run hello-world

如果出现执行docker ps命令,出现 “Cannot connect to the Docker daemon at unix:///var/run/docker.sock. …”问题那是你Docker服务没开,service docker start就行。

装mongo的时候手滑选了什么关闭iptable firewalld selinux 之类的重启后登录不了,只有刷机重装。第二次,一堆报错。

报错截图,我也不知道怎么办啊,很慌

Selinux的提示,But关闭后重启就ssh不上

修改selinux,好孩子别学我

原本是disable的我手贱改了

退订买学生机

退订鲲鹏,希望有一天能再重新用回来

比阿里便宜9毛钱,比腾讯便宜一块钱

安装Sharelatex

首先拖镜像

docker pull sharelatex/sharelatex

华为云的速度倒是挺快的,差不多十分钟吧就拖下来了。

docker-compose问题

[交流分享] 鲲鹏平台安装docker-compose参考我退订了才发现这个帖子,或许可以解决,有精力的同学可以试试,我先缓缓,折腾不动了。

拖下镜像后无论是overleaf官网的Quick Start Guide,还是国内仅有的几篇sharelatex教程:使用Docker部署ShareLaTex并简单配置中文环境ShareLaTeX安装、配置与部署都要求使用docker-compose up来跑sharelatex的镜像,可是docker-compose的安装又十分有问题。我参考bash: docker-compose: command not found中的两种方法,github和pip安装都没解决问题,pip安装报错”ImportError: No module named collections”,然而我也没有找到好的解决办法。

安装pip3,用pip3装compose,我就不信了。

yum -y install python3-pip
pip3 install docker-compose

pip3 install docker-compose 报错

参考Python踩坑之路Command “python setup.py egg_info” failed with error code 1,嗯,依旧没有解决,无论是pip还是pip3。

还有bug

我佛了

解决方案

参考ArchLinux 部署ShareLaTex并且配置中文支持了解到,之所以要docker-copose是因为要sharelatex还要安装mongodb及redis这两鬼东西才能跑,而docker-compose的功能就是自动安装并通过端口把sharelatex与mongodb及redis通过端口连接。换句话说,如果我们手动安装mongodb及redis,手动配置端口,人肉代替docker-compose的功能的话,理论上这个装不上的docker-compose不用装也可以。那么,可能就是手动安装会麻烦些。

安装redis

yum install redis

修改配置文件/etc/redis.conf,开放ip。

修改配置文件,记得开放对应端口6379

安装mongobd 【成功拖下镜像,不带端口参数可run,但是没用】

[交流吐槽]#化鲲为鹏,我有话说# 求鲲鹏云 ubuntu 安装mongodb教程 论坛大佬给了一个Ubuntu的Mongodb下载链接,不过似乎使用也有问题,可以留着以后试一试。

Mongodb在Centos上需要手动编译安装,而且官网也只有x86_64的版本。

不过,我记得在阿里云学生机上成功安装ShareLatex成功Docker-compose的时候,Docker-compose执行了pull mongo类似的命令,那么,我们现在既然有了Docker,当然要用起来啊,大胆地pull

mongodb用docker

参考centos中docker mongodb 配置配置密码,虽然ArchLinux 部署ShareLaTex并且配置中文支持中说到在公网要关闭27017端口,但是我们正是为了要访问,而且也可以通过配置密码的方式来保护。

Docker Run 报错

别人都在怎么关,我再想怎么装

其他

安装宝塔面板 【失败】

在安装GCC之后,检查你的云服务器安全组。放行如下端口

5880也要,安装需要,官网好像漏说了,但是阿里云服务器版宝塔安装教程又说

然后在终端运行

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

可能会提示出错,缺少某个模块。面向Bing或者Google搜索安装方法补上就行。

缺少flsk模块,那就pip嘛

再试一次

神奇,算了不管了

下接华为云学生机装ShareLatex

Docker ShareLatex 华为云