
1.安装
启动
systemclt start docker //启动
systemctl status docker //状态
docker info
systemclt stop docker
systemctl status docker
systemctl enable docker //开机启动
2.常用命令

镜像查看 docker images
镜像查看 docker status
镜像拉取 docker pull centos:7
镜像删除 docker rmi "IMAGE ID"



1.创建一个可以运行命令行的容器
-i 表示运行容器
-t表示启动后进入命令行
centos7:7 /bin/bash 命令行的形式访问镜像。
运行容器
退出容器
查看容器 docker ps
2.创建一个守护进程的容器
docker run -di --name=mycentos2 centos:7 //运行守护进程
docker exec -it mycentos2 /bin/bash //进入到bash底下
-di 后台运行
--name=mycentos2 唯一性
centos:7 镜像

停止

1.把宿主机文件->容器中
查看容器:
启动容器:
查看本地文件:ll
拷贝本地文件到容器中: docker cp anaconda-ks.cfg 79****:/usr/local

以命令行到容器下查看文件:
docker exec -it 76****:/bin/bash
2.把容器中的文件->宿主机
本地终端:docker cp *** ****
本地查看:ll
拷贝文件
目录挂载
查看容器IP地址

目录挂载:
1.本机创建了一个目录 mkdir -p /usr/local/mydata
2.运行 docker :docker run -di -v /usr/local/mydata/:/usr/local/mydata //挂载目录
-- name=mycentos3 centos:/ //docker 和镜像名
3.编译本地test
4.到 docker里 docker exec -it mycentos3 /bin/bash
5.查看docker里的文件 cat test
宿主机里修改,不需要进入容器内修改。
宿主机下查看docker内容


查看IP地址

停止后再删除容器
本地终端运行命令:
查看 docker ps -a
停止 docker stop ***
删除 docker rm ****
3.应用部署
3.1mysql

1.拉取镜像:docker pull mysql:5.7
2.创建容器: docker run -di --name=mysql -p 3306:3306 端口:宿主机和容器
-e MYSQL_PORT_PASSWORD=root mysql:5.7 用户名密码 环境变量
3.进到容器: docker exec -it mysql /bin/bash
4.打开客户端: mysql -uroot -proot --default-character-set=utf-8
编码格式
4.进入容器的Mysql 的操作
5.Navicat宿主机的端口
3.2redis
1.拉取镜像: docker pull redis
2.运行docker: docker run -di --name=redis -p 6379:6379 redis
3.redis 客户端连接

宿主机的IP地址:

4.迁移与备份

容器保存为镜像:
1.查看镜像和容器
docker images
docker ps -a
2.创建新镜像 docker commit redis myredis
3.查看新镜像 docker images
4.根据新镜像创建容器
镜像的备份
1.把myredis 打包成tar包
2.停止容器 docker stop myredis
3.删除容器 docker rm myredis
4.删除镜像 docker rmi myredis
5.查看镜像 docker images
6.查看容器 docker ps -a
已经没有myredis了。
1.查看本地内容
-
拿到myredis的镜像 -i input
-
创建新容器

5.Dockerfile
5.1 dockerfile的使用
5.2 在 centos里安装jdk1.8
1.创建目录+jdk tar包移进去
mkdir -p /usr/local/dockerjdk8
mv jdk-**.tar.gz /usr/local/dockerjdk8/
2.写dockerfile
cd /usr/local/dockerjdk8/
vim Dockerfile
2.1指定基础镜像
2.2指定创建者信息
2.3切换工作目录
2.4创建目录
2.5拷贝jdk8的tar包 到 /usr/local/java
2.6环境变量配置
3.构建镜像
此时目录下就2个文件,一个tar包,一个dockefile(脚本)
docker build -t=''jdk1.8" .
当前目录
运行每步都会显示出来
4.验证:
容器查看 :docker images

6.Docker私有仓库
1.拉取私有镜像
2.启动容器 镜像已经创建为一个容器了
3.访问看下


下拉镜像 :docker pull registry
运行容器:docker run -di
修改配置文件:
重启docker 不止是容器:
查看运行的容器: 啥也没有 docker ps
查看所有的容器:docker ps -a
启动指定名的容器:docker start registry
查看运行的容器: docker ps
7.上传文件到私有仓库

1.镜像打标签
2.查看
3.上传到私有仓库
4.刷新查看
