docker怎么部署Nginx、Redis、MySQL、Tomcat及制作镜像
1、Nginx
docker run -d -p 80:80 nginx
使用浏览器访问虚拟机地址
2、Redis
docker pull redis
docker run --name
redis -d -p 6379:6379
redis
可以使用 Redis 客户端工具连接
连接成功可以看到服务器信息。
3、MySQL
企业中用得最多的是 MySQL 5.7 版本
docker pull centos/mysql-57-centos7
# MYSQL_ROOT_PASSWORD是设置默认登录用户名和密码都是rootdocker
run -d -p 3306:3306 --name
mysql -e MYSQL_ROOT_PASSWORD=root centos/mysql-57-centos7
通过客户端例如 navicat、dbeaver 连接
4、Tomcat
可以先在 Docker Hub 中搜索 tomcat,找到对应的 tomcat 版本和 JDK 版本
# 下载镜像docker pull tomcat
# 创建tomcat目录mkdir -p /opt/docker/tomcat/ROOTcd /opt/docker/tomcat/ROOT
# 创建index.html文件vim index.html
# 写入简单内容Hello Tomcat in Docker!
# 启动容器docker run -d -p 8080:8080 --name tomcat -v /opt/docker/tomcat:/usr/local/tomcat/webapps tomcat
参数说明:
- -p 8080:8080 :将容器的 8080 端口映射到主机的 8080 端口
-p XXX:YYY
:前面的 XXX 指的是宿主机的端口,后面的 YYY 指的是容器中的端口- -v /opt/docker/tomcat:/usr/local/tomcat/webapps 将主机中 /opt/docker/tomcat 目录挂载到容器的 webapps
用浏览器打开 8080 端口
5、制作镜像
(1)基于已有容器创建
docker commit [OPTIONS] 容器名称或ID [镜像名称[:TAG]]# 示例;使用MySQL容器创建镜像docker commit 7c mysqltest:1.0# 查看镜像docker images# 启动容器docker run -d -p 3306:3306 mysqltest:1.0
OPTIONS 参数说明:
- -a, --author string :作者信息
- -c, --change list :使用 Dockerfile 创建
- -m, --message string :提交信息
-p, --pause :提交时暂停容器运行
(2)使用 Dockerfile 创建镜像
Dockerfile 是一个文件,内容由一行行命令语句组成,主要分为四个部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令。
# 使用基础镜像FROM ubuntu:latest
# 设置时区ENV TZ=Asia/ShanghaiRUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置镜像的作者信息#LABEL maintainer="Your Name"
# 暴露容器的端口。非必需#EXPOSE 80
# 定义环境变量#ENV ENV_VARIABLE_NAME=value# 执行更新操作并安装基本软件包。非必需
#RUN apt-get update && \
# apt-get install -y \
# software-properties-common \
# build-essential \
# curl# 设置工作目录WORKDIR /app
# 复制本地文件到容器中COPY . /app
# 执行容器启动时的命令CMD ["command", "arg1", "arg2"]
# 或者,如果需要以可执行文件形式运行应用程序
# CMD ["./your_executable"]
# 或者,如果是需要通过ENTRYPOINT启动的服务
# ENTRYPOINT ["entrypoint_script.sh"]
指令说明
指令 | 说明 |
---|---|
FROM | 指定所创建镜像的基础镜像 |
MAINTAINER | 维护者信息 |
RUN | 运行命令 |
CMD | 启动容器时默认执行命令 |
LABEL | 标签信息 |
EXPOSE | 声明镜像内服务所监听的端口 |
ENV | 环境变量 |
ADD | 复制指定路径下的内容到容器中的路径下,可以为URL,也可以是文件路径,如果为tar文件,会自动解压 |
COPY | 复制宿主机的定路径下的内容到容器中的路径下 |
USER | 运行容器时的用户名 |
WORKDIR | 配置工作目录 |
ARG | 指定镜像内使用的参数 |
构建应用
需求:构建一个 Web 应用,通过 docker 来运行
步骤:
使用 SpringBoot 搭建应用,并提供一个 REST 接口
- 将应用打包成 jar 包
- 将 jar 包上传到 Linux 服务器
- 构建 dockerfile 文件
创建 Dockerfile 文件
vi Dockerfile
编辑内容如下:
# Spring Boot 运行需要依赖javaFROM java:8
# 复制jar包到容器中COPY docker-demo-0.0.1-SNAPSHOT.jar docker-demo-0.0.1-SNAPSHOT.jar
# 运行命令CMD java -jar docker-demo-0.0.1-SNAPSHOT.jar
创建镜像
编写完成Dockerfile后,可以通过以下命令来创建镜像:
docker build [OPTIONS]
主要参数如下:
- -f :指定 Dockerfile 路径,默认为当前目录
- -t :指定生成镜像的标签信息
# 查看镜像docker images
# 启动镜像docker run -d -p 8080:8080 mywebapp:1.0
打开浏览器访问即可。
栏 目:操作系统
下一篇:Windows sever 2019搭建FTP服务器方法
本文标题:docker怎么部署Nginx、Redis、MySQL、Tomcat及制作镜像
本文地址:http://www.ziyuanwuyou.com/html/caozuoxitong/5654.html
您可能感兴趣的文章
- 12-22一文教你掌握红旗Linux系统安装的实用技巧与方法
- 12-22零基础也能学会的红旗Linux系统安装教程分享给大家
- 12-22红旗Linux系统安装全攻略:轻松掌握每一步操作技巧
- 12-22安装红旗Linux系统,享受高效稳定的操作系统体验
- 12-22红旗Linux操作系统安装教程:一步步教你如何快速上手操作
- 12-22新手如何轻松安装红旗Linux系统?一篇教程告诉你答案
- 12-22安装红旗Linux操作系统,开启你的技术之旅
- 12-22红旗Linux系统安装教程:从下载到启动的详细步骤解析
- 12-22安装红旗Linux系统,让你轻松体验Linux的魅力
- 12-22红旗Linux系统安装全解析:从入门到熟练的过程分享
阅读排行
推荐教程
- 12-13Debian11面板怎么添加显示桌面的快捷按钮
- 12-21Windows 7配置详解:打造个性化系统体验
- 12-13ubuntu系统中vdi格式怎么转换为mdk文件
- 12-21Windows Server 2012性能优化设置:提高服务器运行效率的秘诀
- 12-13Win11压缩文件乱码解决方案
- 12-22CentOS虚拟机安装与配置教程
- 12-13centos7怎么进去tmp目录并清除垃圾
- 12-13Ubuntu安装SSH无法连接的问题及解决方法
- 12-22安装麒麟系统,轻松提升电脑性能
- 12-13苹果电脑Mac系统中显示屏幕虚拟键盘的方法