docker–study

docker–概念

docker–image镜像:

docker镜像文件类似java的类模板

docker容器实例类似java中new出来的实例对象

docker–container容器:

容器利用镜像创建的运行实例

docker–repository仓库

集中存放镜像文件的场所

安装步骤

第一步:安装过会更新

yum -y install gcc

yum -y install gcc-c++

跟着官网走

yum-config-manager –add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum安装速度

yum makecache fast

docker–常用命令

学单词的时候到了—————-

systemctl start docker

systemctl stop docker

systemctl restart docker

systemctl status docker

systemctl enable docker

docker info

docker –help

docker–镜像(操作命令)

docker images

docker search

docker search –limit 5 redis

docker pull redis ##默认版本latest,可以redis:5.7 指定版本号

docker system df ## 查看docker使用情况

docker rmi 镜像ID

docker rmi -f 镜像ID

docker images -qa ##显示所有镜像ID

docker rmi -f (docker images -qa) ##删除所有镜像

docker–容器(操作命令)

image-20230126231834519

image-20230126231800732

docker ps

docker ps -a

docker ps -n 2 ## 显示最近两个容器

docker start ID

docker stop ID

docker kill ID

docker rm ID ##先 stop 容器 —docker stop ID

docker rm -f ID ##强制remove

docker ——exit

docker run -d redis ## 后台运行

docker logs ID ##查看日志

docker top ID ##查看容器运行的进程

docker inspect ID ## 容器内部细节

#######################################################

Ctrl + q + p ##退出容器,不终止

docker exec -it redis /bin/bash ## 重新进入容器

docker attach ID

image-20230127102149828

docker cp ID:文件路径 主机文件路径

image-20230127103608983

docker export 容器ID > xxx.tar

image-20230127103956334

导入

image-20230127104349286

image-20230127104643679

查看

image-20230127104816839

docker—洋葱—层级

给容器添加一个vim 指令

image-20230127110622953

示例

image-20230127111102266

查看保存的内容

image-20230127111152947

docker—commit

docker commit -m=”vim add ok” -a=”miao” a1cb6b3e8c35 test/myubuntu

image-20230127111752411

示例

image-20230127112548163

docker–私人repository

docker pull registry

docker run -d -p 5000:5000 -v /lycstudy/myregistry/:/tmp/registry –privileged=true registry

image-20230127121015833

查看仓库

curl -XGET http://172.17.0.1:5000/v2/_catalog

ifconfig 本机 —–》172.17.0.1

image-20230127123607782

本地仓库为空

image-20230127124112244

cp一个镜像

docker tag test/myubuntu:1.2 172.17.0.1:5000/test/myubuntu:1.2

image-20230127124630485

四–重要

vim /etc/docker/daemon.json

image-20230127125108173

五—推送本地仓库

image-20230127125804536

从本地仓库 拉取镜像

image-20230127130515884

容器卷

image-20230127130938591

image-20230127131506969

数据实时更新,数据绑定

docker run -it –privileged=true -v /tmp/host_data:/tmp/docker_data –name=u1 ubuntu

容器

image-20230127132726819

本地

image-20230127132847402

查看—–docker inspect 容器ID

image-20230127133229186

读写

docker run -it –privileged=true -v /tmp/host_data:/tmp/docker_data –name=u1 ubuntu

##################

ro ## read only 表示容器只能读取文件,不能写文件

docker run -it –privileged=true -v /tmp/host_data:/tmp/docker_data:ro

–name=u1 ubuntu

继承—–容器1继承容器2

docker run -it –privileged=true –volumes-from u1 –name u2 ubuntu

image-20230127141001851

try–other—Tomcat and mysql —install

安装 or

Tomcat 10 版本 会有以下小问题——————————-

解决–docker安装Tomcat 访问不了

docker run -d -p 8080:8080 –name=tomcat22 tomcat ##启动容器

docker exec -it 容器ID /bin/bash ##进入容器

image-20230127144302067

MySQL—-

安装———

image-20230127151222849

image-20230127151056615

image-20230127151244589

本地打开图形化界面操作远程mysql

docker run –name 22mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123123 -d mysql:5.7

进入

docker exec -it cdb0279aa74b bash

刷新密码权限

GRANT ALL PRIVILEGES ON . TO ‘root‘@’%’ IDENTIFIED BY ‘123123’ WITH GRANT OPTION;

刷新权限

flush privileges;

数据会同步

image-20230127181303392

image-20230127181602286

进阶一点mysql

docker run -d -p 3306:3306 –privileged=true

-v /lycstudy/mysql/log:/var/log/mysql

-v /lycstudy/mysql/data:/var/lib/mysql

-v /lycstudy/mysql/conf:/etc/mysql/conf.d

-e MYSQL_ROOT_PASSWORD=123123

–name mysql mysql : tag(版本号)

docker run -d -p 3306:3306 --privileged=true 
-v /lycstudy/mysql/log:/var/log/mysql
-v /lycstudy/mysql/data:/var/lib/mysql
-v /lycstudy/mysql/conf:/etc/mysql/conf.d
-e MYSQL_ROOT_PASSWORD=123123
--name mysql mysql : tag(版本号)

——修改乱码问题——

修改—–/lycstudy/mysql/conf

cd /lycstudy/mysql/conf

vim my.conf

添加–不一定有用(百度)

[client]

default_character_set=utf8

[mysqld]

collation_server = utf8_general_ci

character_set_server=utf8

[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

查看编码—

show VARIABLES like ‘CHARACTER%’

image-20230127192314983