Docker-compose 容器

操作

服务器资源

  • docker资源

    
    [ghost@trilium20251227 trilium]$ docker stats --no-stream
    CONTAINER ID   NAME      CPU %     MEM USAGE / LIMIT   MEM %     NET I/O           BLOCK I/O        PIDS
    834584383b6e   trilium   0.00%     104.6MiB / 400MiB   26.15%    1.27MB / 2.27MB   169MB / 6.99MB   11
    a5090bbc5aae   ghost     0.03%     140.4MiB / 256MiB   54.84%    146kB / 3.67MB    286MB / 29.5MB   11
    1619e84b6ff1   nginx     0.00%     8.625MiB / 64MiB    13.48%    7.97MB / 8.77MB   8.82MB / 86kB    2
    6f97f828412e   certbot   0.00%     568KiB / 985.5MiB   0.06%     9.69MB / 56.7kB   172MB / 2.66MB   1
  • docker守护进程

    [ghost@trilium20251227 ruby]$ systemctl status docker
    ● docker.service - Docker Application Container Engine
       Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
       Active: active (running) since Sat 2025-12-27 15:26:00 CST; 1 weeks 1 days ago
         Docs: https://docs.docker.com
     Main PID: 1634 (dockerd)
        Tasks: 40
       Memory: 65.8M
       CGroup: /system.slice/docker.service
    ...
  • docker网络

    docker network ls
    docker network inspect ghost_net
  • 查看日志

    [ghost@trilium20251227 certbot]$ docker logs -f certbot
    fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/main/x86_64/APKINDEX.tar.gz
    fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/community/x86_64/APKINDEX.tar.gz
    (1/16) Installing libexpat (2.7.3-r0)
    (2/16) Installing mpdecimal (4.0.0-r0)
    (3/16) Installing python3 (3.12.12-r0)
    (4/16) Installing python3-pycache-pyc0 (3.12.12-r0)
    (5/16) Installing pyc (3.12.12-r0)
    (6/16) Installing py3-certifi-pyc (2024.2.2-r1)
    (7/16) Installing py3-charset-normalizer (3.3.2-r1)
    (8/16) Installing py3-charset-normalizer-pyc (3.3.2-r1)
    (9/16) Installing py3-idna (3.7-r0)
    (10/16) Installing py3-idna-pyc (3.7-r0)
    (11/16) Installing py3-urllib3 (1.26.18-r1)
    (12/16) Installing py3-urllib3-pyc (1.26.18-r1)
    (13/16) Installing py3-requests-pyc (2.32.4-r0)
    (14/16) Installing python3-pyc (3.12.12-r0)
    (15/16) Installing py3-certifi (2024.2.2-r1)
    (16/16) Installing py3-requests (2.32.4-r0)
    Executing busybox-1.36.1-r29.trigger
    OK: 68 MiB in 59 packages

镜像

  • 罗列镜像 docker images
    • 磁盘占用 docker system df
  • 拉取镜像 docker pull myrepo/my_image:v1.0
    • 推送镜像 docker push myrepo/my_image:v1.0
    • 导出镜像 docker save -o my_image.tar my_image:latest
    • 导入镜像 docker load -i my_image.tar
    • 标记镜像 docker tag my_image:latest myrepo/my_image:v1.0
  • 运行镜像 docker run -d --name my_container my_image:latest
  • 删除镜像
    • 删除指定镜像 docker rmi my_image:latest
    • 清理闲置镜像 docker image prune -a
    • 清理闲置镜像网络卷资源 docker system prune -a

容器

  • 配置文件 默认基于同路径下的docker-compose.yml文件,-f xxx.yml 指定文件
  • 创建容器 docker-compose up -d -d 为后台
  • 运行容器 docker-compose start
    • 查看资源 docker stats
    • 查看进程 docker ps -a
    • 查看日志 docker-compose logs 
    • 进入容器 docker-compose exec 容器名称 sh
  • 重启容器 docker-compose restart
  • 销毁容器 docker-compose down
  • 停止容器 docker-compose stop

应用

所给的链接,都是可以获取docker-compose.yml 或 启动命令,一分钟部署网站服务,容器即服务。

基础设施

nginx https://hub.docker.com/_/nginx  服务器入口,反向代理,服务应用的被访问代理人

docker-shadowsocks https://hub.docker.com/r/oddrationale/docker-shadowsocks 自建VPN代理服务器

certbot https://eff-certbot.readthedocs.io/en/latest/install.html#alternative-1-docker Let's Encrypt的https SSL证书申请和更新程序

数据库

mariadb https://hub.docker.com/_/mariadb 开源关系数据库,是mysql的一个分支,完全兼容MySQL

云笔记

trilium
https://github.com/Nriver/trilium-translation 私有云笔记,速度极快,分享后可访问,有win客户端

wiki

xwiki https://github.com/xwiki/xwiki-docker 维基程序,配合tomcat,mysql或postgres使用

mediawiki https://hub.docker.com/_/mediawiki 维基程序,配合mariadb使用

博客

Ghost 博客
https://hub.docker.com/_/ghost 简洁的博客程序,使用Node.js语言开发,支持MySQL、MariaDB、SQLite和PostgreSQL数据库

论坛

Flarum 论坛
https://github.com/mondediefr/docker-flarum 不少爱好者论坛使用 ,基于php,有yml配置,但看过说明无法确定是否能一分钟部署 

Casnode 论坛
https://github.com/casbin/casnode/blob/master/docker-compose.yml  一个仿 V2EX 社区风格的开源论坛项目。 yml含mysql,需考虑好数据备份