逸学Docker【java工程师基础】2.Docker镜像容器基本操作+安装MySQL镜像运行

基础的镜像操作

在这里我们的应用程序比如redis需要构建成镜像,它作为一个Docker文件就可以进行构建,构建完以后他是在本地的,我们可以推送到镜像服务器,逆向可以拉取到上传的镜像,或者说我们可以保存为压缩包进行相互传递

在本地的镜像可以传来传去,本身也可以查看和删除

查看镜像

docker  images

删除镜像

 docker rmi

当然查看帮助文档,可以查看docker的所有命令了

 docker --help

比如想看某个命令的作用,也可以这样查看

docker images --help

运行镜像

在这里我们安装mysql作为镜像并且讲解

1.我们先从镜像服务器拉取到MySQL

docker pull mysql:5.7

2.查看镜像

docker images

3.创建两个文件夹用来挂载

补充:-p代表可以嵌套创建多级文件夹

在这里创建挂载是因为镜像是一个整体,删了就没有了,我们可以从外部对应一个文件夹来映射,删了镜像,但是文件还在服务器上

mkdir -p /home/service/mysql/data

mkdir -p /home/service/mysql/conf

4.切换到/home/service/mysql/conf目录

cd /home/service/mysql/conf

5.创建my.cnf文件

补充:如果当前目录下没有名为 "my.cnf" 的文件,touch my.cnf 命令将创建一个新的空文件。如果该文件已经存在,touch 命令将更新文件的访问和修改时间戳,但不会改变文件的内容。

touch my.cnf

 "my.cnf" 通常是一个配置文件,用于存储 MySQL 服务器的配置信息。你可以使用文本编辑器(如 vim 或 nano)来编辑这个文件,以设置各种服务器参数。

6.编辑mysql配置信息

vim my.cnf

并且将下面内容粘入

[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
default-time_zone = '+8:00'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

补充:

(如果没有vim就 yum install vim)

7.创建并且运行一个容器

docker run

-d mysql:5.7

--name mysql

-p 3306:3306

-v /home/service/mysql/logs:/logs

-v /home/service/mysql/data:/mysql_data

-e MYSQL_ROOT_PASSWORD=123456

docker run:创建并运行一个容器,可以加-d让容器在后台运行
--name mysql:给容器起个名字,必须唯一 

-p 3306:3306 设置端口映射  第一个是服务器端口,第二个是容器端口

-v 用服务器的实体文件挂载到数据卷,数据卷对应的容器目录

数据卷(volume)是一个虚拟目录,是容器内目录与宿主机目录之间映射的桥梁。

用真实控制虚拟,虚拟控制容器

-e 设置环境变量  配置MySQL数据库的root用户的密码为123456

8.进入容器并且交互

docker exec -it mysql bash

9.输入密码登录

mysql -uroot -p

补充:密码不显示

10.mysql->

CREATE USER 'admin'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'admin'@'%'; 
flush privileges; 

11.退出退出   查看启动状态

exit

exit

docker ps

快捷安装

docker pull mysql:5.7 

docker images 

mkdir -p /home/service/mysql/data 
mkdir -p /home/service/mysql/con

cd /home/service/mysql/conf

touch my.cnf 

vim my.cnf

-----------------------------
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
default-time_zone = '+8:00'
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
-----------------------------------------

docker run -p 3306:3306 --name mysql -v /home/service/mysql/logs:/logs -v /home/service/mysql/data:/mysql_data -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7


docker exec -it mysql bash 

mysql -uroot -p 

123456

--------------------------------------

REATE USER 'admin'@'%' IDENTIFIED BY '123456';
GRANT ALL ON *.* TO 'admin'@'%'; 
flush privileges; 

------------------------------

docker ps

容器的命令

镜像到容器这一步,我们的操作就在重点就在容器的命令了

常用的

查看容器

docker ps 

可以加参数-a :显示所有的容器,包括未运行的

强制删除运行中的容器命令

docker rm -f  容器

  • 25
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员逸尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值