Dokcer初见

安装

rpm方式

官方rpm包下载地址: https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
阿里镜像下载地址: https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/

yum

由于自带版本较旧,建议使用其它源

[docker]
name=doker
baseurl = https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/7/x86_64/stable/
enabled=1
gpgcheck=0

Ubuntu参考阿里云:https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.6a0b1b11zSmSRx

命令补全包: docker-compose、bash-completion

配置加速

mkdir /etc/docker
vim /etc/docker/daemon.json 
{
  "registry-mirrors":["https://r4jnxp63.mirror.aliyuncs.com"]
}
systemctl daemon-reload
systemctl restart docker

常用命令

镜像

#搜索
docker search [option]
# docker search --filter=is-official=true NAME
  -f    #过滤输出内容
  --format string    #格式化输出内容
  --limit int        #限制输出个数,默认25个
  --no-trunc    #不截断输出

#删除
docker rmi
-f        #强制删除
-no-prune        #不清理未带标签的父镜像
#清理无用镜像
docker image prune 
  -a        #删除所有无用,不止临时
  -filter        #清理符合给定过滤器的镜像
  -f        #强制删除

#上传
docker [container] commit 
-a    #作者信息
-c    #提交时执行docker命令
-m    #提交信息
-p    #提交时暂停容器运行

-o 或 > #保存至本地
-i 或 <  #加载本地镜像

 

 容器

#创建   
docker create -it IMAGE_NAME
# 创建和运行可以一步完成
docker run  IMAGE_NAME

#进入容器
推荐exec
docker exec
-d                      #在容器中后台执行命令,默认前台
--detach-keys=""        #指定切回后台按键
-e,--env[]              #指定环境变量列表
-i,--interactive=true|false        #打开标准输入接收输入指令,默认false
--privileged=true|false            #是否给执行命令最高权限,默认为false
-t, --tty=true|false              #分配伪终端
-u,--user=""                      #执行命令的用户名或ID

--rm                   #容器退出后自动删除
--restart policy             #设置容器是否跟随docker服务启动
docker exec
-it container_name /bin/bash #导出容器制作镜像 #导出容器 docker export -o container.tar container_name #恢复 docker import container.tar container_name docker run -it container_name /bin/bash

 

 --restart 可以指定四种不同的policy 

no  :默认值为否,退出容器时不自动重启容器。
on-failure[:max-retries]:仅在容器以非零退出状态退出时重新启动。 (可选)限制Docker守护进程尝试重新启动的重试次数。

always:无论退出状态如何,始终重新启动容器。当指定时,Docker守护程序将尝试无限期重启容器。无论容器的当前状态如何,该容器还将始终在守护程序启动时启动。

unlessstopped:无论退出状态如何,始终重新启动容器,但是如果之前已将容器置于停止状态,则不会在守护程序启动时启动它。

尝试使用lamp

docker pull mattrayner/lamp

docker run -it -p "80:80" -v /app:/app -v /data/mysql:/var/lib/mysql mattrayner/lamp:latest

docker exec  -it reverent_bouman /bin/bash

vim /app/index.php
<?php
phpinfo();
?>

 

查看结果

 

posted @ 2020-11-14 16:26  天际之上可有蓝天  阅读(123)  评论(0编辑  收藏  举报