存档

‘Docker’ 分类的存档

搭建小型团队Wiki系统-gollum

2019年2月19日 没有评论

这两天在考虑给我们4个人的小团队使用什么好的知识共享软件?第一个进入我的视野就是大名鼎鼎的confluence,无论从哪个角度考虑,confluence都是首选,而且我也装了,不过由于云服务器配置实在是太差,做一个操作就要卡上半天(cpu跑满了)。因此无奈,confluence被我pass掉了!接下来我考虑了一下Doku,这是一个php开发的小型wiki系统,其实它很不错,各方面都不错,而且插件也比较丰富。但是它有自己的一套语法系统,使用插件的话可以支持Markdown,但是相对比较麻烦一些,主要还是内心对它并不是特别喜欢吧,也被我pass掉了。最后进入我的视野的gollum(咕噜),这gollum和指环王中的是同一个词,不知道当初起名时,是不是作者比较喜欢电影中的咕噜。gollum是ruby开发的一套wiki系统,它支持Markdown语法、轻量级、结构清晰,看起来是不错的选择。

Docker安装Gollum

首先这里假设你已经成功安装docker了,如果你还没有安装,可以自行搜索一下资料,还是很简单的,这里就不再叙说了。

Dockerfile文件

FROM ruby
RUN apt-get -y update && apt-get -y install libicu-dev cmake && rm -rf /var/lib/apt/lists/*
RUN gem install github-linguist
RUN gem install gollum-rugged_adapter
RUN gem install gollum
RUN gem install org-ruby  # optional
WORKDIR /wiki
ENTRYPOINT ["gollum", "--port", "80", "--adapter", "rugged"]
EXPOSE 80

Docker-compose文件

version: "2"

services:
  gamemodr_wiki:
    build: ./gollum
    volumes:
      - /data/wiki/gamemodr:/wiki
    expose:
      - 80
    ports:
      - 8888:80

运行”docker-compose up -d “就可以让容器服务运行了,注意挂载的”/data/wiki/gamemod”目录需要是一个git初始化过的目录。

如果需要在线编辑,可以用nginx做一个反向代理,然后加一个http用户认证,当然权限部分就没办法了。如果不需要在线编辑,可以去掉gollum在线编辑功能,然后和类似jenkins集成工具整合,也是不错的选择。

分类: Docker, 随笔 标签: ,

docker exec进入容器

2018年5月9日 没有评论

docker技术原来越普及,那么我们怎么进入一个正在运行中的docker容器哪?

目前常用的有4种方式:

1、docker attach
2、SSH
3、nsenter
4、docker exec

目前比较推荐使用第4中docker exec的方式,当然这篇博客主要目的是学习记忆,我自己也是这方面的新人。

启动php-fpm容器

docker run -d --name="king_php72" php:7.2.4-fpm

进入容器

上面的命令我们在启动时已经给docker命名了,所以可以直接通过名字的方式通过exec进入。

docker exec -it king_php72 /bin/bash

如果我们不清楚docker容器的名字,我们可以通过docker ps来获取容器的ID,通过容器ID进入容器。

# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
76c6cbb1a025        php:7.2.4-fpm       "docker-php-entrypoi…"   5 minutes ago       Up 5 minutes        9000/tcp                 king_php72
# docker exec -it 76c6cbb1a025 /bin/bash

参考文章:《如何进入Docker容器》