docker容器技术初学习

docker学习:
1、简介:
Docker是一个开源的应用容器引擎。
运行各种镜像产生容器 将其打包成镜像
Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其它使用者可以直接使用这个镜像;
运行中的这个镜像称为容器,容器启动是非常快速的。
容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低

2、Docker核心概念:
(1)、docker镜像(Images):Docker镜像用于创建Docker容器的模板。
(2)、docker容器(Container):容器是独立运行的一个或一组应用。
(3)、docker客户端(Client):客户端通过命令行或者其他工具使用Docker
API(https://docs.docker.com/reference/api/docker_remote_api/)
与Docker的守护进程通信
(4)、docker主机(Host):一个物理或者虚拟的机器用于执行Docker守护进程和容器
(6)、docker仓库(Registry):Docker仓库用来保存镜像,可以理解为代码控制中的代码仓库。
Docker Hub(https://hub.docker.com)提供了庞大的镜像集合供使用

3、使用步骤:
(1)、安装Docker;
(2)、去Docker仓库找到这个软件对应的镜像;
(3)、使用Docker运行这个镜像,这个镜像机会生成一个Docker容器;
(4)、对容器的启动停止就是对软件的启动停止;

4、Linux虚拟机上安装Docker
(1)、查看centOS版本:Docker要求CentOS系统的内核版本高于3.10
uname -r
(2)、升级软件包寄内核(选做):yum update
(3)、安装Docker yum install docker
(4)、启动Docker:systemctl tart docker
(5)、将docker服务设置为开机启动:systemctl enable docker
(6)、停止docker:systemctl stop docker

四、常用操作:
1、镜像操作
(1)、检索:docker search 关键字 doocker search redis
说明:我们经常去docker hub上检索镜像的详细信息,如镜像的TAG。
(2)、拉取:docker pull 镜像名:tag :tag是可选的,tag表示标签,多为软件的版本,默认是latest
(3)、列表:docker images 查看所有本地镜像
(4)、删除:docker rmi image-id 删除指定本地镜像

2、容器操作
软件镜像----运行镜像----产生一个容器(正在运行的软件)
步骤:
(1)、搜索镜像:docker search tomcat
(2)、拉取镜像:docker pull tomcat
(3)、根据镜像启动容器
容器操作:
(1)、运行:docker run --name container-name -d image-name
例如:docker run -name myredis -d redis
–name:自定义容器名 -d:后台运行 image-name:指定镜像模板
(2)、列表:docker ps(查看运行中的容器);
参数说明:加上-a;可以查看所有容器
(3)、停止:docker stop container-name/container-id
说明:停止当前你运行的容器
(4)、删除:docker rm container-id
说明:删除指定容器
(5)、启动:docker start container-name/container-id
说明:启动容器
(6)、端口映射:-p 6379:6379
例如:docker run -d -p 6379:6379 --name myredis docker.io/redis
说明:-p:主机端口(映射到)容器内部的端口
(7)、容器日志:docker logs container-name/container-id
(8)、更多命令:
https://docs.docker.com/engine/reference/commandline/docker/
一个镜像可以启动多个容器

查看Linux防火墙:service firewalld status
关闭防火墙:service firewalld stop

五、安装Mysql:
步骤流程:
(1)、docker search mysql
(2)、docker pull mysql
(3)、docker run --name mysql01 -d mysql 错误启动的方式
正确的启动方式:
docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
这种方式也不能拿来使用:
docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql 这种方式就可以使用了

几个其他的高级操作:
docker run --name mysql03 -v /my/cutom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql
把主机的/my/cutom文件夹挂载到mysqldocker容器的/etc/mysql/conf.d文件夹里面
改mysql的配置文件就只需要把mysql配置文件放在/my/cutom
docker run --name mysql03 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
–character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
指定mysql的一些参数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值