【docker11】docker安装常用软件
目录
- docker安装常用软件
- 1.安装软件说明
- 1.安装tomcat
- 2.安装mysql
- 2.1简单版
- 2.2实战版本
- 3.安装redis
docker安装常用软件
1.安装软件说明
框架图
总体步骤:
- 搜索镜像
- 拉去镜像
- 查看镜像
- 启动镜像 - 服务端口映射
- 停止容器
- 移除容器
1.安装tomcat
docker hub上查找tomcat镜像
从docker hub上拉取tomcat镜像到本地
docker images查看是否有拉取到的tomcat
使用tomcat镜像创建容器实例(也叫运行镜像)
命令:
docker run -it -p 8080:8080 --name t1 tomcat
-p小写,主机端口:docker容器端口
-P大写,随机分配端口
i:交互
t:终端
d:后台大写P的例子
docker run it -P tomcat访问tomcat首页
问题:
解决:Ⅰ.可能没有映射端口或者关闭防火墙Ⅱ.把webapps.list目录换成webapps- 删除webapps,并将webapps.dict改成webapps
- 查看当前目录
- 再次访问首页
免修改本说明
命令:
docker pull billygoo/tomcat8-jdk8
docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8
2.安装mysql
docker hub上面查找mysql镜像
从docker hub上(阿里云加速器)拉取mysql镜像到本地标签为5.7
容器命令出处
2.1简单版
使用mysql镜像
命令:
docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
问题:可能在使用docker之前,linux已经安装mysql,那此时3306端口就已经被占用了
解决:在使用启动docker命令前用命令ps -ef|grep mysql
观察3306端口是否被占用
观察是否启动成功
建库建表插入数据
外部Win11连接运行在docker上的mysql容器实例服务
问题
问题1:插入中文数据会报错,为什么会报错?docker上默认字符集没有修正
解决办法: docker里面的mysql容器查看,内容如下
命令:SHOW VARIABLES LIKE 'character%';
不要在连接工具里面看,工具会将有些字段自动转换成utf8的格式
在mysql中直接执行该语句会发现全是latin格式
问题2:删除容器后,mysql里面的数据怎么办?
解决办法:实战版本
2.2实战版本
新建mysql容器实例
命令如下:
docker run -d -p 3306:3306 --privileged=true -v /asule/mysql/log:/var/log/mysql -v /asule/mysql/data:/var/lib/mysql -v /asule/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
//不要粘贴这个只是为了看起来整洁,linux中回车会导致执行 docker run -d -p 3306:3306 --privileged=true -v /asule/mysql/log:/var/log/mysql -v /asule/mysql/data:/var/lib/mysql -v /asule/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
新建my.cnf
通过容器卷同步给mysql容器实例
在上述配置的conf文件夹下创建my.cnf并配置如下内容
[client] default-character-set=utf8 [mysqld] collation-server=utf8_general_ci character-set-server=utf8
重新启动mysql容器实例再重新进入并查看字符编码
重启mysql服务
查看字符编码
再新建库新建表再插入中文测试
从mysql看
从连接工具看(发现中文乱码已经解决)
总结
- 之前的DB是无效的
- 修改字符集操作和重启mysql实例之后的DB有效,需要新建
- docker安装完Mysql并run出容器后,建议修改完字符集编码后再新建mysql库-表-插入数据
- 假如将当前容器实例删除,再重新来一次,之前建的db01实例还有吗?
- 假如有人把该容器实例删除了
- 再启动mysql,发现db01还是存在的
- 结论:容器卷是一定要挂载的,就算把容器实例删除了,只要保存在对应的宿主机上,重新启动容器后依旧能把数据拿回来,才能保证数据的不丢失
3.安装redis
从docker hub上(阿里云加速器)拉取redis镜像到本地标签为6.0.8
命令:
docker run -d -p 6379:6379 redis:6.0.8
入门命令
命令挺行:容器卷记得假如–privileged=true
在CentOS宿主机下新建目录/app/redis
命令:
mkdir -p /app/redis
将一个redis.conf文件模板拷贝到/app/redis目录下
/app/redis目录下修改redis.conf文件
开启redis验证 (可选)
允许redis外地连接,必须注释掉# bind 127.0.0.1
将daemonizeyes注释起来或者设置成daemonizeno,因为该配置和docker run 中-d参数冲突会导致容器一直启动失败
如果daemonizeyes,即linux下的redis会在后台运行,此时redis将一直运行,除非手动kill该进程,所以会和docker中的redis启动的端口产生冲突
开启redis数据持久化appendonly yes(可选)
使用redis6.0.8镜像创建容器(也叫运行镜像)
这里用6.0.8一直启动不了换成默认版本就能启动了
docker run -d -p 6379:6379 --privileged=true -v /app/redis/redis.conf:/etc/redis/redis.conf -v /app/redis/data:/data --name myredis redis:latest redis-server /etc/redis/redis.conf
//不要粘贴这个只是为了看起来整洁,linux中回车会导致执行 docker run -d -p 6379:6379 --privileged=true -v /app/redis/redis.conf:/etc/redis/redis.conf -v /app/redis/data:/data --name myredis redis:6.0.8 redis-server /etc/redis/redis.conf
启动成功
测试redis-cli连接
请证明docker启动使用了我们自己指定的配置文件
默认的配置文件的redis库是16个
修改我们指定配置文件redis库的个数
修改之前可以访问0~15的库
访问redis15的库,发现访问不了则是自己的配置文件启动的redis
【docker11】docker安装常用软件相关推荐
- 四、docker系列之docker安装常用软件
docker安装常用软件 目录 docker安装常用软件 docker安装运行redis 一.DockerHup redis仓库 二.镜像拉取 三.镜像启动 四.参数解析 docker安装运行mysq ...
- Docker安装常用软件-Mysql
一.生成镜像 方法一:通过Dockerfile 1.新建目录 mysql D:\docker\docker应用池\mysql mysql目录下创建三个目录 /home/mysql /logs /co ...
- Docker安装常用软件/JAVA/大数据
Docker安装常用软件 文章目录 Docker安装常用软件 一.Docker安装 1. Windows安装Docker Desktop 2. Centos安装Docker 二.大数据组件安装 1. ...
- Docker 安装常用软件(超全、超实用)
容器化概念越来越普及,很多公司都在往这个方向发展,也有不少公司在招聘要求上提到这点.Docker就是一个出色的.开源的应用容器引擎.只需要一条命令就可安装一个软件环境,非常方便. 安装Docker 以 ...
- 使用docker安装常用软件
大家好,我是音乐家. 在docker的自行摸索中,确实踩过很多坑,耽误过很多时间.接下来我会一一讲解常用软件的下载.亲测有效! 目录 1.安装mysql 2.安装mongodb 3.安装rabbitm ...
- Docker安装常用软件
一.基本要用到的几个命令 其实记住下面这两个就行了 docker --help:列出所有命令及其说明 docker COMMAND --help:单个命令的用法 其中安装软件需要用到的 search: ...
- Docker 安装一些软件命令
Docker 安装一些软件命令 一.Docker的安装 1. Ubuntu系 2. Centos系 二.Docker可视化控制面板--Portainer汉化版 三.Docker运行Mysql 四.Do ...
- (七) Docker安装常规软件
Docker安装常规软件 一.安装tomcat 1.docker hub上面查找tomcat镜像 2.从docker hub上拉取tomcat镜像到本地 3.docker images查看是否有拉取到 ...
- ubuntu 美化日常配置和安装常用软件保姆级教程
目录 ubuntu 美化配置,日常配置,安装常用软件 前期准备 开机黑屏修复 更改用户名 软件包概念 卸载脚本 安装中文输入法 美化 安装必要软件 安装常用软件 微信 Docker 微信安装教程 QQ ...
最新文章
- mysql占用资源最小的语句_MySQL一个语句查出各种整形占用字节数及最大最小值的实例...
- gin获取post参数
- 使用SSH反向隧道进行内网穿透
- c语言字符串初值问题!
- JS----javascript原型和原型链
- 用国产CH32替代STM32,快来试试看!
- git提取和拉取的区别_git fetch和git pull的区别
- 万维网发布服务 w3svc 已停止 除非万维_万维网和互联网的区别
- jq之animate()操作多个属性
- 计算机gt的使用方法,旗舰级综合效果器 BOSS GT-1000使用宝典(二) | 基础操作
- 【ssh登陆问题】no matching cipher found / no matching key exchange method found
- 30号晚直播丨数据操作加速器,CloudQuery v1.3.5 发布!
- 批处理查找html,批处理(bat)实现全盘搜索指定文件获取其完整路径方法大全,bat大全分享...
- matlab 生命游戏
- 计算机无法启动怎么重装系统,韩博士教你如何为系统崩溃无法开机的电脑重装系统...
- Matlab 官网培训 - 大型项目-风力发电机数据模型构建-Catching the Wind
- matlab 求留数,基于MATLAB的留数计算方法的探讨
- day 26 学习Linux-01天
- Java 下数据业务逻辑开发技术 JOOQ 和 SPL
- Lonlife-ACM Round #7