Docker无套路操作教程

修改时间: 2019-05-12 17:54:00 PM

文章时间:2019年5月12日 16:27:44
docker入门
更新时间:2020年6月21日 19:39:53

基础先行

docker使用先了解三个概念

镜像(image)
一个特殊的文件系统(使用 Union FS 技术),镜像不包含任何动态数据,其内容在构建之后也不会被改变。

容器(container)
容器就是镜像的运行时,容器可以被创建、启动、停止、删除、暂停等。

tips: 容器里面的存储会随着容器删除而丢失,根据 Docker 最佳实践的要求,容器不应该向其存储层内写入任何数据,容器存储层要保持无状态化。

仓库(repository)
仓库是我们拉货(镜像)的位置,官方的仓库是 Docker Hub 地址:https://hub.docker.com/

Linux 安装教程

⭐首选方法:一分钟安装(部署)docker教程【实战】

通过curl来安装

安装curl教程:http://www.souvc.com/?p=1779

wget -qO- https://get.docker.com/ | sh

官方安装教程:(推荐)

地址:https://docs.docker.com/install/linux/docker-ce/centos/

docker 基本命令

万能命令(其实是帮助)

docker 命令 --help
docker pull    //拉取镜像
docker build   //创建镜像
docker images  //列出镜像
docker run     //运行container
docker ps -a     //列出全部容器

docker rm 容器id     //删除某个容器container
docker rmi     //删除image
docker cp      //在host和container之间拷贝文件
docker commit  //保存改动为新的image

docker pull 命令是去仓库拉取镜像
wordpress:latest是镜像名和对镜像的版本

表格查看

docker命令 描述
attach 当前shell下attach连接指定运行镜像
build 通过Dockerfile定制镜像
commit 提交当前容器为新的镜像
cp 从容器中拷贝指定文件或者目录到宿主机中
create 创建一个新的容器,通run,但不启动容器
diff 查看docker容器变化
events 从docker服务获取容器实时时间
exec 在已存在的容器上运行命令
export 导出容器的内容流作为一个tar归档文件对应 [import]
history 展示一个镜像形成历史
images 列出系统当前镜像
import 从tar包中的内容创建一个新的文件系统影像 [对应 export]
info 显示系统相关信息
inspect 查看容器详细信息
kill kill 指定 docker 容器
load 从一个tar包中加载一个镜像 [对应 save]
login 注册或者登陆一个docker源服务器
logout 从当前 docker registry 退出
logs 输出当前容器日志信息
port 查看映射端口对应的容器内部源端口
pause 暂停容器
ps 列出容器列表
pull 从docker镜像源服务器拉取指定镜像或者库镜像
push 推送指定镜像或者库镜像至docker源服务器
restart 重启运行的容器
rm 移除一个或者多个容器
rmi 移除一个活多个镜像[无容器使用该镜像才可删除,否则需删除相关容器才可继续或-f强制删除]
run 创建一个新的容器并运行一个命令
save 保存一个镜像为一个tar包[对应 load]
search 在docker hub中搜索镜像
start 启动容器
stop 停止容器
tag 给源中镜像打标签
top 查看容器中运行的进程信息
unpause 取消暂停容器
version 查看 docker 版本号
wait 截取容器停止时的退出状态值

最佳实践(初体验)

docker一分钟安装启动一个nginx

docker run -d -p 8080:80 nginx

执行完上面命令后,直接访问ip+8080端口即可访问。

docker安装Mysql服务

1、获取mysql镜像

docker pull mysql

2、在后台启动mysql容器(--name指定了容器的名称,方便之后进入容器的命令行,
MYSQL_ROOT_PASSWORD=root指定了mysql的root密码,-d表示在后台运行)

docker run --name=mysql -it -p 3306:3306 -e MYSQL_ROOT_PASSWORD=emc123123 -d mysql

进入bash容器

docker exec -it mysql bash

然后输入正常的mysql命令即可

mysql -uroot -p

docker安装jpress(国内仿wordpress的博客系统)

下载docker-compose文件

wget https://gitee.com/fuhai/jpress/raw/master/docker-compose.yml

执行

docker-compose up -d

执行完毕后,访问http://ip:8080即可访问。

添加新评论