使用 docker 的过程中,数据保存是很重要的一环,因为容器一旦被删除,容器内的数据也将一并被删除。而 Volume 正是为了解决这个问题而存在,它可以映射一个物理机上的文件夹到容器内部,用于保存容器产生的数据。下面就来说说 Dokcer Volume 的使用及注意事项。
标签归档:docker
Docker save 和 export 的区别
使用 docker 也有一段时间了,每次使用 docker help
的时候,我都很好奇 save
和 export
的区别,由于本人一般比较倾向于用 Dockerfile
和 volume
来迁移和保存数据,所以对此两个功能没多做研究。今天闲来无事,便研究一下这两个命令的区别,做些知识储备。
Docker 仓库的一些基本概念
Docker 仓库,细说起来和 git 仓库是有着异曲同工之处的,都是可以 commit/pull/push,并且每次提交都是分层的结构。下面就说说 docker 仓库的一些基本概念,以及和 git 仓库都有哪些相同之处。
Docker build 的几种方式
从 docker build
的帮助文件中我们可以看到,docker build
不仅能支持本地 Dcokerfile 的构建,还可以从 URL
以及标准输入(-
)中读取信息进行构建,下面就来说说 docker build
的几种构建方式。
Docker 常用命令简介
说是简介,其实也就是翻译+说明,加深一下自己印象的同时,也留个备份吧。
群晖 NAS 手动重启 Docker 服务
最近在使用群晖 NAS 自带的 Docker 应用时,总是出现容器无法停止的情况,即使在命令行中使用 docker stop
也无济于事。
想再去控制台重启 Docker 应用,又发现 Document Viewer 应用依赖到 Docker 应用,无法单独重启 Docker ,必须先停掉 DocViwer 容器。
完蛋,这就进入死循环了……
使用 docker 启动 Mojo-Webqq
简介
之前介绍过在物理机上的安装Mojo-Webqq(《Mojo-Webqq安装实例》),如果不想在物理安装过多插件和应用,希望能快速推倒重建,使用docker是最便捷的选择。下面就来说说如何使用docker来启动Mojo-Webqq。
灰灰官方也有Dockerfile模板,但是用命令行方式启动带入模块及参数有些许麻烦。故在原有模版的基础上稍加改进,结合Mojo-Webqq-Scripts来启动Mojo-Webqq,希望能带来用脚本启动时的熟悉体验。
克隆项目
git clone https://github.com/huangzhongzhang/Mojo-Webqq-Docker.git
也可以直接下载解压:
wget https://github.com/huangzhongzhang/Mojo-Webqq-Docker/archive/master.zip -O Mojo-Webqq-Docker.zip
unzip Mojo-Webqq-Docker.zip
修改login.pl
文件
修改login.pl
文件,添加或删减功能。
具体可参考:Mojo::Webqq使用简介
cd Mojo-Webqq-Docker
vim login.pl
创建docker镜像
# 安装docker
sudo curl -sSL https://get.daocloud.io/docker | sh
# 设定权限
sudo usermod -aG docker hzz
# 添加daocloud加速器
sudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://929e52fa.m.daocloud.io
sudo systemctl restart docker
# 构建镜像
cd Mojo-Webqq-Docker
docker build -t mojo-webqq .
启动镜像并扫描二维码
docker run -t --name Mojo-Webqq --env MOJO_WEBQQ_LOG_ENCODING=utf8 -p 5011:5011 -v /tmp:/tmp mojo-webqq
示例
没错,这篇文章只是README(后续更新以README为准)的改版,哈哈,谁让我懒呢。
利用 docker 打造一机多用的隔离环境
前提
最近在进行Linux培训,为了方便大家进行基础命令的操作及脚本的编写调试,在仅有一台VPS的情况下,如何为多个用户创建练习环境成了一个难题。如果直接创建主机用户供使用,权限分配困难且风险较大,并且有可能对当前系统上运行的服务造成影响。恰好最近对docker有所关注,便想着利用docker,新建容器供每个人练习,即使误操作使容器崩溃,也不会影响当前系统。下面就说说,怎么把系统用户和docker的容器关联,以及如何编写快速新建(重建)用户脚本。