3.docker入门到精通—常规安装
创始人
2025-05-31 07:40:48
0

docker私服仓库启动

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

push 将镜像推送到私服库

docker push 192.168.3.15:5000/laymanubuntu:1.2

curl 验证私服库上有什么镜像

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

将 docker 容器内的数据保存进宿主机的磁盘中

docker run -it --privileged=true -v /tmp/myHostData:/tmp/myDockerData myubuntu:1.2
默认读写:docker run -it --privileged=true -v /tmp/myHostData:/tmp/myDockerData:rw myubuntu:1.2
只读权限:docker run -it --privileged=true -v /tmp/myHostData:/tmp/myDockerData:ro myubuntu:1.2

查看数据卷是否挂载成功

docker inspect 容器ID
eg:docker inspect 23771a942367

卷的继承和共享:

容器 1 完成和宿主机的映射

docker run -it --privileged=true -v /mydocker/u:/tmp --name u1 ubuntu

容器 2 继承容器 1 的卷规则

docker run -it --privileged=true --volumes-from 父类 --name u2 ubuntu
eg: docker run -it --privileged=true --volumes-from u1 --name u2 ubuntu

安装tomcat

搜索: docker search tomcat
拉取: docker pull tomcat
使用 tomcat 镜像创建容器实例(也叫运行镜像): docker run -d -p 8080:8080 --name t1 tomcat
访问:192.169.3.15:8080

(若报404错误->新版tomcat中webapps为空)

解决方案一:(将webapps.dist目录换成webapps)

先进入容器: docker exec -it e0c3a07e4a68 /bin/bash
删除webapps: rm -r webapps
将webapps.dist目录换成webapps: mv webapps.dist webapps

解决方案二:(免修改版)

docker pull billygoo/tomcat8-jdk8
docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8

安装****mysql

—简单版

拉取:  docker pull mysql:5.7
运行: docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
进入容器: docker exec -it 974ad4dea576 /bin/bash
登录mysql: mysql -uroot -p 回车输入密码
show databases;
create database db01;
use db01;
create table t1(id int, name varchar(20));
insert into t1 values(1, 'z3');
select * from t1;
insert into t1 values(2, '李四');
插入中文报错:Incorrect string value: '\xE7\x8E\x8B\xE4\xBA\x94' for column 'name' at row 1

问题一:docker 上默认字符集编码隐患

docker 里面的 mysql 容器实例查看,内容如下:

SHOW VARIABLES LIKE 'character%';

**问题二:此****方式启动的mysql,**删除容器后,里面的 mysql 数据如何办?(数据备份,敏感数据迁移问题)

必须挂载容器数据卷。

—实战版

新建mysql容器实例:

docker run -d -p 3306:3306 --privileged=true -v /zzyyuse/mysql/log:/var/log/mysql -v /zzyyuse/mysql/data:/var/lib/mysql -v /zzyyuse/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root --name mysql mysql:5.7

**解决中文乱码:**在/zzyyuse/mysql/conf/中新建my.cnf

[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8

重新启动 mysql 容器实例, 再重新进入, 并查看字符编码

重新启动mysql容器实例: docker restart mysql;
重新进入: docker exec -it mysql /bin/bash;
查看字符编码: SHOW VARIABLES LIKE 'character%';

docker 安装完 MySQL 并 run 出容器后,建议请先修改完字符集编码后再新建 mysql 库-表-插数据。

【结论】此时,将当前容器实例删除,再重新来一次,之前建的 db01 实例还在。

安装redis

入门命令:

docker run -d -p 6379:6379 redis:6.0.8;
docker exec -it 7c12884e2a07 /bin/bash;
执行 redis-cli 连接redis server: # redis-cli

【命令提醒】:容器卷记得加入--privileged=true

在 CentOS 宿主机下新建目录/app/redis

mkdir -p /app/redis/

在/app/redis/下创建redis.conf文件,并修改

1.开启 redis 验证 【可选】

requirepass root

2.允许redis 外地连接 必须 注释掉 # bind 127.0.0.1 【必须】

# bind 127.0.0.1

3.将 daemonize yes 注释起来或者设置为daemonize no,因为该配置和 docker run 中-d 参数冲突,会导致容器一直启动失败【必须】

daemonize no

4.开启 redis 数据持久化 【可选】

appendonly yes

使用 redis6.0.8 镜像创建容器(也叫运行镜像)

docker run -p 6379:6379 --name myr3 --privileged=true -v /app/redis/redis.conf:/etc/redis/redis.conf -v /app/redis/data:/data -d redis:6.0.8 redis-server /etc/redis/redis.conf

vim /etc/docker/daemon.json

{
"registry-mirrors":
["https://aa25jngu.mirror.aliyuncs.com"], 
"insecure-registries":["192.168.3.15:5000"]
}

相关内容

热门资讯

【LoRaWAN_End_No... 基于LM401模组 在 STM32Cube IDE 环境下实现 LoRaWAN_End_Node 代...
做一个专业的班主任读后感 做一...   做一个专业的班主任读后感    作为一名老师,即使没有学生那样的假期作业,闲暇时间读读书也是一件...
做最好的中层读后感 做最好的中...   篇一:做最好的中层读后感    暑假期间学习了《做最好的中层》这本书,感受颇深。该书紧紧围绕“最...
做最好的员工读后感 做最好的员...   篇一:做最好的员工读后感    这本书的内容主要是写我们如何去做一个好员工以及做好员工的方法和思...
爸妈太过分读后感 爸妈太过分读...   爸妈太过分读后感(一)    陈方伟    这本书是英国作家彼特。约翰森写的。《爸妈太过分》里十...
读爸妈太过分有感 读爸妈太过分...   读爸妈太过分有感(一)    今年寒假,张老师给我们推荐里一本书,描写得很贴近我们生活,是英国作...
MQTT.fx软件连接阿里云 阿里云注册及认证、MQTT下载阿里云:物联网平台 (aliyun.com)mqtt.f...
最美孝心少年读后感 最美孝心少...   篇一:最美孝心少年读后感    我看了最美孝心少年后很感动,其中我最佩服的是黄凤。她在六岁的时候...
左手倒影右手年华读后感 左手倒...   篇一:左手倒影右手年华读后感    《左手倒影右手年华》让我看到了我正在经历的青春,激起了我的共...
尊严读后感400字 尊严读后感...   篇一:尊严读后感400字    在预习课文第七课《尊严》时,我被课文的内容深深地吸引住了。   ...
做幸福的教师读后感 做幸福的教...   篇一:做幸福的教师读后感    这几天都在读王三阳 老师的《做幸福的老师》一书,一口气读了近百页...
做最好的老师读后感 做最好的老...   篇一:做最好的老师读后感    我从朋友家借来一本名为《做最好的老师》的书,这本书是 李镇西老师...
米哈游春招算法岗-2023.0... 交换字符 Problem Description 米小游拿到了一个仅由小写字母组成的字符串ÿ...
最美的时光读后感 最美的时光读...   篇一:最美的时光读后感    一下子暗恋了十年,其勇气很令人佩服。这是小说首先吸引人的地方。读到...
邹忌讽齐王纳谏读后感 邹忌讽齐...   篇一:邹忌讽齐王纳谏读后感    俗话说:人贵有自知之明。在这个复杂的社会中,自知之明成大事者必...
最后一片叶子读后感 最后一片叶...   篇一:最后一片叶子读后感    美国作家欧亨利在他的小说《最后一片叶子》里讲了个故事:病房里,一...
最后一课读后感200字 最后一...   篇一:最后一课读后感200字    《最后的一课》的作者阿尔封斯﹒都德(1840——1897),...
紫藤萝瀑布读后感 紫藤萝瀑布读...   篇一:紫藤萝瀑布读后感    紫藤萝是长绿植物,但它会随着季节而变化。春季的枝叶更显茂盛,因为它...
使用Bigemap下载地图流程 前言:以下流程为同事指导完成,需要可部分参考 其他可参考文章࿱...
周一清晨的领导课读后感 周一清...   篇一:周一清晨的领导课读后感    读完《周一清晨的领导课》,第一感觉就是它看似很薄,却又似乎很...