Docker基本使用

一、简介

Docker是一个开源的应用容器引擎;是一个轻量级容器技术;

Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;

运行中的这个镜像称为容器,容器启动是非常快速的。

在这里插入图片描述
在这里插入图片描述

二、核心概念

docker主机(host):安装了Docker程序的机器(Docker直接安装在操作系统之上);
docker客户端(Client):连接docker主机进行操作;

docker仓库(Registry):用来保存各种打包好的软件镜像;

docker镜像(Images):软件打包好的镜像;放在docker仓库中;

docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
在这里插入图片描述

三、使用步骤

  1. 确认要安装docker的系统的linux内核高于3.10,低于3.10使用yum update 更新
uname -r
  1. 安装docker
yum install docker
  1. 查看docker版本
docker-v
  1. 查看docker状态
service docker status
  1. 启动docker
service docker start
  1. 停止docker
service docker stop
  1. 设置docker开机自启
systemctl enable docker

四、docker常用命令

镜像操作

在这里插入图片描述

修改镜像源

修改 /etc/docker/daemon.json ,写入如下内容(如果文件不存在请新建该文件)

vim /etc/docker/daemon.json

# 内容:

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

在这里插入图片描述

容器操作

Tomcat

  1. 下载tomcat镜像
docker pull tomcat

如需选择具体版本,可以在https://hub.docker.com/
搜索tomcat

docker pull tomcat:7.0.96-jdk8-adoptopenjdk-hotspot
  1. 根据镜像启动容器,不加TAG默认latest,如果没有下载latest会先去下载再启动
docker run --name mytomcat -d tomcat:latest

--name :給容器起名
-d :后台启动,不加就是前端启动,然后你就只能开一个新的窗口连接,不然就望着黑乎乎的窗口,啥也干不了,Ctrl+C即可退出,当然,容器也会关闭。

  1. 查看运行中的容器
docker ps
  1. 停止运行中的容器
docker stop  容器的id

# 或者

docker stop  容器的名称,就是--name给起的哪个名字

  1. 查看所有的容器
docker ps -a
  1. 启动容器
docker start 容器id/名字
  1. 删除一个容器
docker rm 容器id/名字
  1. 启动一个做了端口映射的tomcat
 docker run -d -p 8888:8080 tomcat

-d:后台运行
-p: 将主机的端口映射到容器的一个端口 主机端口(8888):容器内部的端口(8080)

外界通过主机的8888端口就可以访问到tomcat,前提是8888端口开放
9. 关闭防火墙

# 查看防火墙状态
service firewalld status

# 关闭防火墙
service firewalld stop
 

10.查看容器的日志

docker logs 容器id/名字

更多命令参看
https://docs.docker.com/engine/reference/commandline/docker/

MySQL

# 拉取镜像
docker pull mysql:5.7.28

# 运行mysql容器
 docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.28

--name mysql:容器的名字是mysql;

MYSQL_ROOT_PASSWORD=root:root用户的密码是root (必须指定)

连接容器内mysql

在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:

  • docker attach
  • docker exec:推荐使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。
docker exec -it mysql bash

-i: 交互式操作。

-t: 终端。

mysql: 名为mysql的 镜像。

bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 bash,也可以用/bin/bash

连接上以后就可以正常使用mysql命令操作了

mysql -uroot -proot

直接使用端口映射更加方便

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.28
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值