18.3月25日 Linux:Docker应用
真实需求:
一个小团体,需要定期教研开会。由于是各个学校的,想选择线上会议软件。
-
腾讯会议(收费)
-
钉钉会议(部分人没APP)
-
自己弄个?
必须承认,99%没能力开发需要的应用
Docker
什么是Docker
快速、简单的部署各种现成的服务
docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的linux服务器,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类iphone的app),并且容器开销极其低。
为什么docker越来越受欢迎
-
灵活:即使是最复杂的应用也可以集装箱化。
-
轻量级:容器利用并共享主机内核。
-
可互换:您可以即时部署更新和升级。
-
便携式:您可以在本地构建,部署到云,并在任何地方运行。
-
可扩展:您可以增加并自动分发容器副本。
-
可堆叠:您可以垂直和即时堆叠服务。
镜像和容器
通过镜像启动一个容器,一个镜像是一个可执行的包,其中包括运行应用程序所需要的所有内容包含代码,运行时间,库、环境变量、和配置文件。
容器是镜像的运行实例,当被运行时有镜像状态和用户进程,可以使用docker ps 查看。
容器和虚拟机
容器时在linux上本机运行,并与其他容器共享主机的内核,它运行的一个独立的进程,不占用其他任何可执行文件的内存,非常轻量。
虚拟机运行的是一个完成的操作系统,通过虚拟机管理程序对主机资源进行虚拟访问,相比之下需要的资源更多。

Docker到哪找
-
github
Docker、Docker-compose
直接使用Docker部署容器比较麻烦,
Docker Compose 是一个用于定义和运行多个 Docker 容器应用程序的工具。通过一个单独的文件(通常命名为 docker-compose.yml)
通过简单的命令来启动、停止和管理整个应用程序。
Docker安装
正常安装
略(因为不推荐)
1PANEL安装
推荐,因为方便管理!
操作方式:
注意:我要其实在之前的课程中已经使用Docker部署过phpadmin
配置镜像下载加速(看情况,非必须!!)
使用1panel配置
https://dockerproxy.com
https://mirror.baidubce.com
https://docker.m.daocloud.io
https://docker.nju.edu.cn
https://docker.mirrors.sjtug.sjtu.edu.cn
DockerProxy 代理加速:dockerproxy.com
百度云 Mirror: mirror.baidubce.com
Daocloud: docker.m.daocloud.io
南京大学:docker.nju.edu.cn
上海交大:docker.mirrors.sjtug.sjtu.edu.cn
注意要重启服务!!
项目:
极简项目一: Memos备忘录
备忘录(私有、轻量、开源、自托管)
略
项目二:PDF工具箱
日常办公的时候经常会用到 PDF,很多时候我们都需要对它进行一些处理操作,
比如添加水印等
网上工具都要钱,WPS没会员。。
自己搭一个
步骤一:创建项目文件夹
sudo mkdir /usr/local/stirling_pdf
sudo cd /usr/local/stirling_pdf
步骤二:修改配置文件
创建并编辑 docker-compose.yml文件
sudo nano docker-compose.yml
配置文件内容从哪来?
一般是github上,项目文件里一定会写。
考虑到“网络”原因,这次我提供
version: '3.3'
services:
stirling-pdf:
image: frooodle/s-pdf:latest
ports:
- '8080:8080'
volumes:
- ./trainingData:/usr/share/tessdata #Required for extra OCR languages
- ./extraConfigs:/configs
# - ./customFiles:/customFiles/
# - ./logs:/logs/
environment:
- DOCKER_ENABLE_SECURITY=false
- INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false
步骤三: 安装并启动
sudo docker compose up -d
其他:
其他管理操作,建议直接在1panel上面执行
用命令的方式比较麻烦
项目三: tailchat 聊天室
参考:https://tailchat.msgbyte.com/zh-Hans/docs/deployment/docker-compose
步骤一:创建项目文件夹
sudo mkdir /usr/local/tailchat
sudo cd /usr/local/tailchat
步骤二:下载镜像
sudo docker pull moonrailgun/tailchat
sudo docker tag moonrailgun/tailchat tailchat
步骤三:下载、修改配置文件
sudo wget https://raw.githubusercontent.com/msgbyte/tailchat/master/docker-compose.yml
sudo wget https://raw.githubusercontent.com/msgbyte/tailchat/master/docker-compose.env
有可能不让下,“网络”原因
docker-compose.yml
docker-compose.env
在启动之前需要修改一下配置
修改 docker-compose.env 文件的配置,以下字段推荐修改:
API_URL对外可访问的url地址,用于文件服务访问, 可以是域名也可以是ip 如果出现发送图片不能正常显示就是这个变量没有设置
步骤四: 安装并启动
sudo docker compose up -d