Docker基础学习

一 安装Docker

1 yum包更新到最新
sudo yum update
2 安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3 设置yum源为阿里云
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4 安装docker
sudo yum install docker-ce
5 安装后查看docker版本
docker -v

6 设置镜像路径

vi /etc/docker/daemon.json

在该文件中输入如下内容

{
“registry-mirrors”: [“http://hub-mirror.c.163.com”]
}

二 Docker的启动与停止

2.1 启动Docker
systemctl start docker
2.2 停止docker
systemctl stop docker
2.3 重启docker
systemctl restart docker
2.4 查看docker状态
systemctl status docker
2.5 开机自动启动
systemctl enable docker
2.6 查看docker命令
docker --help

三 常用命令

3.1镜像相关的
3.1.1 查看镜像
docker images
3.1.2 搜索镜像
docker search 镜像名称
3.1.3 拉去镜像
docker pull 镜像名:tag
tag 镜像版本号 不写的话,默认最新的
3.1.4 删除镜像
docker rmi 镜像id或者名称
3.1.5 删除所有镜像
docker rmi ‘docker images -q’
3.2 容器相关的
3.2.1 查看正在运行的容器
docker ps
3.2.2 查看所有容器
docker ps -a
3.2.3 查看最后一次运行的容器
docker ps -l
3.2.4创建启动容器
docker run -it --name=容器名称 镜像名称:标签 /bin/bash

-i 表示运行容器
-t 表示容器启动后进入命令行
–name 为创建的容器命名
-v 表示目录映射关系
-d 创建守护式容器
-p 映射端口

3.2.5 进入容器
docker exec -it 容器名称 /bin/bash
3.2.6 退出容器
容器停止 exit 容器不停止 ctrl+p+q
3.2.7 启动容器
docker start 容器名称或者容器ID
3.2.8 停止容器
docker stop 容器名称或者容器ID

3.2.9 文件拷贝
docker cp 需要拷贝的文件或者目录 容器名称:容器目录
docker cp 容器名称:容器目录 需要拷贝的文件或者目录
3.2.10 目录挂载
docker run -it -v 宿主机目录:容器目录 --name=mycentos centos:7
3.2.11 查看容器IP地址
docker inspect 容器名称(容器ID)
3.2.12 删除容器
docker rm 容器ID(容器名称)

四 Mysql与Docker命令

搜索mysql数据库
docker search mysql
拉去mysql数据库
docker pull mysql:5.7
运行mysql
docker run -it --name=mysqldemo -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql

左侧 宿主机开放的端口
右侧 容器开发的端口

进入容器
docker exec -it mysqldemo /bin/bash

登录mysql数据库
mysql -u root -p

远程登录mysql
连接虚拟机ip地址 例如 192.168.180.131 3306

五 tomcat部署

docker search tomcat

docker pull tomcat

docker run -it --name=mytomcat -p 8080:8080 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat

六 nginx部署

docker search nginx

docker pull nginx

docker run -it --name=myngnix -p 80:80 ngnix

七 redis部署

docker search redis

docker pull redis

docker run -di --name=myredis -p 6379:6379 redis

八 迁移与备份

8.1 将容器保存为镜像
docker commit mynginx mynginx_i

8.2 镜像备份
将镜像保存为tar文件
docker save -o mynginx.tar mynginx_i

8.3 镜像恢复与迁移
docker load -i mynginx.tar

-i 输入的文件
执行后查看镜像,可以看到镜像已经恢复

九 Dockerfile

9.1 概念
一系列命令和参数构成的脚本,这些命令应用基础镜像并最终创建一个新的镜像

9.2 常用命令
from image_name:tag 定义了使用哪个基础镜像启动构建流程

maintainer user_name 声明镜像的创建者

env key value 设置环境变量(可以写多条)

run command 是Dockerfile的核心部分(可以写多条)

add source_dir/file dest_dir/file 将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压

copy source_dir/file dest_dir/file 和ADD相似,但是如果有压缩文件并不能压缩

workdir path_dir 设置工作目录

9.3 使用脚本创建镜像
FROM centos:7
MAINTAINER xsh
WORKDIR /usr
RUN mkdir /usr/local/java
ADD jdk-8u221-linux-x64.tar.gz /usr/local/java

ENV JAVA_HOME /usr/local/java/jdk_1.8.0_221
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH J A V A H O M E / b i n / d t . j a r : JAVA_HOME/bin/dt.jar: JAVAHOME/bin/dt.jar:JAVA_HOME/lib/tools.jar: J R E H O M E / l i b : JRE_HOME/lib: JREHOME/lib:CLASSPATH
ENV PATH J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH

需要先下载centos:7镜像

十 Docker 私有仓库

10.1 拉取私有仓库镜像文件
docker pull registry

10.2 启动私有仓库容器
docker run -di --name-registry -p 5000:5000 registry

10.3 打开浏览器
输入地址http://192.168.180.131:5000/v2/_catalog 看到{“repositories”:[]}表示私有仓库搭建成功并且内容为空

10.4 修改daemon.json
vi /etc/docker/daemon.json

添加内容
{“insecure-registries”:[192.168.180.131.5000]}
此步用于让docker信任私有仓库地址

10.5 重启docker服务
systemctl restart docker

十一 镜像上传至私有仓库

11.1 标记此镜像为私有仓库的镜像
docker tag jdk1.8 192.168.180.131:5000/jdk1.8

11.2 再次启动私服容器
docker start registry

11.3 上传标记的镜像
docker push 192.168.180.131:5000/jdk1.8

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值