Docker篇(实际应用)

目录

[一、MySQL 部署](#一、MySQL 部署)

[1. 拉取 MySQL 镜像](#1. 拉取 MySQL 镜像)

[2. 查看镜像](#2. 查看镜像)

[3. 创建 MySQL 容器](#3. 创建 MySQL 容器)

[4. 进入 MySQL 容器,登陆 MySQL](#4. 进入 MySQL 容器,登陆 MySQL)

[5. 远程登陆 MySQL](#5. 远程登陆 MySQL)

[6. 查看容器 IP 地址](#6. 查看容器 IP 地址)

[二、tomcat 部署](#二、tomcat 部署)

[1. 拉取 tomcat 镜像](#1. 拉取 tomcat 镜像)

[2. 创建 tomcat 容器](#2. 创建 tomcat 容器)

[3. 搭建 Tomcat 服务并部署 web 应用](#3. 搭建 Tomcat 服务并部署 web 应用)

[三、Nginx 部署](#三、Nginx 部署)

[1. 拉取 Nginx 镜像](#1. 拉取 Nginx 镜像)

[2. 创建 Nginx 容器](#2. 创建 Nginx 容器)

[3. 测试 Nginx](#3. 测试 Nginx)

[四、Redis 部署](#四、Redis 部署)

[1. 拉取 Redis 镜像](#1. 拉取 Redis 镜像)

[2. 创建 Redis 容器](#2. 创建 Redis 容器)

[3. 客户端测试](#3. 客户端测试)

五、Docker部署Nexus


一、MySQL 部署

1. 拉取 MySQL 镜像

复制代码
docker pull mysql:5.6 

2. 查看镜像

复制代码
docker images 

3. 创建 MySQL 容器

复制代码
docker run -di --name kkb_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.6 

-p 代表端口映射,格式为 宿主机映射端口:容器运行端口

-e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是 root 用户的登陆密码

4. 进入 MySQL 容器,登陆 MySQL

进入 mysql 容器

复制代码
docker exec -it kkb_mysql

登陆 mysql

复制代码
mysql -u root -p

5. 远程登陆 MySQL

我们在我们本机的电脑上去连接虚拟机 Centos 中的 Docker 容器,

这里 192.168.247.130 是虚拟机操作系统的 IP

6. 查看容器 IP 地址

我们可以通过以下命令查看容器运行的各种数据

复制代码
docker inspect kkb_mysql

运行效果如下:

我们可以看到我们的数据库服务器的IP是172.17.0.2

二、tomcat 部署

1. 拉取 tomcat 镜像

复制代码
docker pull tomcat:7-jre7

2. 创建 tomcat 容器

创建容器 -p 表示地址映射

复制代码
docker run -di --name=kkb_tomcat -p 9000:8080 tomcat:7-jre7 

3. 搭建 Tomcat 服务并部署 web 应用

复制代码
docker run -di --name my-tomcat -v /root/webapps: /usr/local/tomcat/webapps -p 8888:8080 imageID 
 
docker run -ti --name my-tomcat -v /opt/webapps:/opt/tomcat/webapps -p 8888:8080 imageID /bin/bash 

容器内的 tomcat 目录:/usr/local/tomcat/webapps

复制代码
docker run -di --name my-tomcat -v /kkb/webapps:/usr/local/tomcat/webapps -p 
8888:8080 --privileged=true tomcat:7-jre7 

说明:

  • --name:该参数的作用是给容器起一个名字,名字要唯一。
  • -v:该参数的作用是进行目录映射,具体指的是宿主机器和容器之间的目录映射。
  • /opt/webapps:宿主机器的目录
  • /opt/tomcat/webapps:容器中的目录
  • -p:该参数的作用是进行端口映射,具体指的是宿主机器和容器之间的端口映射。 8888 端口是宿主机的端口 8080 端口是容器内的端口

1、将 war 包上传到宿主机器的/opt/webapps/目录下。

2、tomat 会自动热部署,直接访问 web 应用的路径即可。

三、Nginx 部署

1. 拉取 Nginx 镜像

复制代码
docker pull nginx

2. 创建 Nginx 容器

复制代码
docker run -di --name=kkb_nginx -p 9080:80 nginx /bin/bash 

 
/usr/sbin/nginx 

3. 测试 Nginx

浏览器地址栏输入: http://192.168.247.135

四、Redis 部署

1. 拉取 Redis 镜像

复制代码
docker pull redis 

2. 创建 Redis 容器

复制代码
docker run -di --name=kkb_redis -p 16379:6379 redis 

3. 客户端测试

在你的本地电脑命令提示符下,用 window 版本 redis 测试

复制代码
redis-cli -h 192.168.247.135 

五、Docker部署Nexus

Docker安装Nexus搭建Maven私服及介绍_docker nexus-CSDN博客

相关推荐
七夜zippoe4 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
金刚猿4 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong5 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿5 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
Fcy6485 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满5 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠6 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9036 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
陈桴浮海6 小时前
Kustomize实战:从0到1实现K8s多环境配置管理与资源部署
云原生·容器·kubernetes
珠海西格电力科技7 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市