Docker实践3:fig搭建mediawiki

fig,无花果。fig项目源自docker,可以认为是快速搭建基于Docker的隔离开发环境的工具。

一、安装fig$ mkdir docker; cd docker$ curl -L https://github.com/docker/fig/releases/download/1.0.1/fig-`uname -s`-`uname -m` > fig$ sudo chmod +x fig; sudo mv /usr/local/bin/二、搭建mediawiki

使用个人构建的镜像,github地址:https://github.com/bopjiang/wikimedia-docker

在docker目录下执行如下命令:

$ git clone https://github.com/bopjiang/wikimedia-docker.git$ cd wikimedia-docker$ fig up -d此时有两个容器启动:r$ docker psCONTAINER IDIMAGECOMMANDCREATEDSTATUSPORTSNAMES21182a060c17nickstenning/mediawiki:latest "/usr/bin/mediawiki- 7 hours agoUp 7 hours0.0.0.0:8880->80/tcp wikimediadocker_wiki2_1 728ec09c3552mysql:5.7.5"/entrypoint.sh mysq 7 hours agoUp 7 hours3306/tcpwikimediadocker_db_1 三、fig.yml

fig.yml用来配置镜像构建的具体内容,此wiki的fig.yml在wikimedia-docker目录下,内容如下:

wiki2:image: ‘nickstenning/mediawiki’ports:- "8880:80"links:- db:databasevolumes:- /data/wiki2:/datadb:image: "mysql:5.7.5"expose:- "3306"environment:- MYSQL_ROOT_PASSWORD=defaultpassimage:用来指定镜像,如果本地没有,fig将会尝试去远程pull这个镜像。ports:暴露的端口.

links:在其他服务中连接容器。

volumes: 卷挂载路径,容器中的/data/目录挂载到主机的/data/wiki2下。在wiki配置完毕后,将LocalSettings.php文件放置在主机的/data/wiki2目录下。

expose:也是暴露端口,与ports的区别是不发布到宿主机的端口,只被连接的服务访问。

environment:设置环境变量。

四、wiki的配置

浏览器中输入localhost:8880,首次启动会让进入配置界面。完成后生成LocalSettings.php文件。也可以直接在这个配置文件中作配置。

五、wiki的使用技巧

1.左侧导航栏的配置以管理员身份登录,在搜索栏中输入MediaWiki:sidebar进入配置界面后就可以编辑了。比如:<pre>navigation :8880/index.php?title=Category:XXX|XXX mainpage|mainpage-description portal-url|portal </pre>3.分类文章的末尾加入"category"标签即可将此文章放到了xxx分类中,,一篇文章可以加入多个分类。比如:[[category:XXX]]4.新文章在Search中输入你的文章名称即可Edit。5.换行用br标签可以换行。<br>空一行也会有换行效果。6.pre标签包围源代码例如:<pre>private int mSize;</pre>

六、保存容器和导入

sudo docker commit 9ab6e234c9ba linc-wikisudo docker images REPOSITORYTAGIMAGE IDCREATEDVIRTUAL SIZE linc-wikilatestb5a1e34b01c214 seconds ago689.7 MBsudo docker export 9ab6e234c9ba > /home/linc/docker/images-bk/linc-wiki-export.tarsudo docker save linc-wiki > ../images-bk/linc-wiki-save.tar$ du -sh *495M linc-wiki-export.tar672M linc-wiki-save.tarsudo cat /home/linc/docker/images-bk/linc-wiki-export.tar | sudo docker import – docker_hgwebsudo docker load –input ../images-bk/linc-wiki-save.tar

附录:

1.fig使用报错及解决

fig running error:

$ fig upCouldn’t connect to Docker daemon at http:/ – is it running?If it’s at a non-standard location, specify the URL with the DOCKER_HOST environment variable.

fix it:

1) Change the DOCKER_OPTS in /etc/default/docker to:DOCKER_OPTS="-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock"2) Restart dockersudo restart docker3) Make sure that docker is running on localhost:4243 $ netstat -ant |grep 4243tcp00 127.0.0.1:42430.0.0.0:*LISTEN4) Set DOCKER_HOST (.bashrc)export DOCKER_HOST=tcp://localhost:4243$ echo $DOCKER_HOSTtcp://localhost:4243

参考:

dockerpool.com/static/books/docker_practice/fig/yml_ref.html

想要成功,就一定要和成功的人在一起,不然反之

Docker实践3:fig搭建mediawiki

相关文章:

你感兴趣的文章:

标签云: