安装Docker
参考https://blog.csdn.net/2201_76100073/article/details/137025119
更新软件包
sudo apt update
sudo apt upgrade
docker依赖
sudo apt-get install ca-certificates curl gnupg lsb-release
添加docker密钥
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
添加Docker软件源
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
安装Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
配置用户组(可选)
默认情况下,只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo。命令如下:
sudo usermod -aG docker $USER
启动docker和hello-world例子
sudo systemctl start docker
sudo docker run hello-world
可能会报错docker: error pulling image configuration: download failed after attempts=6: dial tcp 162.125.32.10:443: i/o timeout. 这是由于被墙了,可以加国内镜像源
加阿里云镜像
去阿里云注册账号,然后点控制台,找容器镜像服务,里面会生产docker的专属链接
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
再次执行
sudo docker run hello-world
会出现Hello from Docker!,安装完成。
安装docker-compose
# 下载文件
sudo curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
#查看是否成功
docker-compose -version
安装Overleaf
拉取最新的sharelatex镜像
docker pull sharelatex/sharelatex
下载docker-compose.yml文件并修改参数
mkdir overleaf && cd overleaf
curl -O https://raw.githubusercontent.com/sharelatex/sharelatex/master/docker-compose.yml
修改
ports:
- 80:80 ---》 - 5000:80 # 自定义端口
#版本改一下
mongo:
restart: always
image: mongo:4.0 ----》image: mongo:5.0
# 自定义相关文件的路径,其他的自行考虑改不改,可以默认
mongo:
restart: always
image: mongo:5.0
container_name: mongo
expose:
- 27017
volumes:
- ~/mongo_data:/data/db -----》 - ~/overleaf/mongo_data:/data/db
执行overleaf容器
docker-compose up -d
打开http://localhost:5000/launchpad,即可看到注册界面
TeXLive安装
进入到容器sharelatex的命令行界面:
docker exec -it sharelatex bash
进入到sharelatex容器的文件夹:
cd /usr/local/texlive
下载更新文件:
wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh --no-check-certificate
执行更新操作:
sh update-tlmgr-latest.sh -- --upgrade
为了提高更新速度,配置国内更新源:
tlmgr option repository https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet/
执行更新操作:
tlmgr update --self --all # luaotfload-tool -fu
执行安装操作:
tlmgr install scheme-full
设置容器自启动
systemctl enable docker.service