Docker基本概念与实践(四)-部署简单web项目(tomcat+war+mysql)
Docker简单部署web项目(tomcat+war包+mysql)
先简单测试单独运行tomcat项目
#启用tomcat8镜像命名为webapp,将容器的8080端口映射到主机的8080端口 docker run -p 8080:8080 --name webapp -d tomcat:8
将项目放入tomcat运行
#进入刚刚用tomcat8镜像运行的容器,并关闭容器内tomcat服务,进入容器内的bin目录 docker exec -it webapp /bin/bash #进入tomcat的bin目录 关闭 sh shutdown.sh #将宿主机的war包传到tomcat容器的webapp下 -> docker cp 本地文件路径 容器名/id:容器路径 docker cp /usr/local/war/linjw.war webapp:/usr/local/tomcat/webapps docker start webapp
添加mysql镜像
#后台启动一个mysql5.7镜像 映射宿主机3308端口 设置密码garwer 如果本地无该镜像将从官方拉取 docker run -d -p 3308:3306 -e MYSQL_ROOT_PASSWORD=garwer -e MYSQL_DATABASE=garwer mysql:5.7 【这种启动方式有个弊端,可以测试访问mysql成功后,在里面创建一张表退出,停止容器后再重启,数据就丢失了 正确的姿势是:挂载一个本地文件到容器,以此保证mysql容器数据的持久化(还可以根据需要mysql的配置文件,这边仅挂载数据) -v 前面为宿主机路径 后为容器路径 --privileged=true给容器加上特定权限 否则挂载的时候会报权限错误 宿主机会自动创建/usr/local/mysql-docker/data路径文件 这边因为因为外部占用我用3308 可自行调整端口 】 docker run -d -p 3308:3306 --name garwer-mysql --privileged=true -e MYSQL_ROOT_PASSWORD=garwer -e MYSQL_DATABASE=garwer -v /usr/local/mysql-docker/data:/var/lib/mysql mysql:5.7 #进入容器查看是否创建了garwer数据库 密码是否为garwer fcfdc2743ebe为我的容器id docker exec -it fcfdc2743ebe /bin/bash #登陆测试 mysql -uroot -p
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
通过 ansible 创建 openstack 虚拟机并部署应用(实战篇)
前文 通过 ansible 创建 openstack 虚拟机并部署应用(配置篇) 接下来我们实战一下。 目录结构 ── ansible.cfg├── group_vars│ ├── all.yml├── openstack.py├── README.md├── roles│ ├── newtouch.MySQL│ ├── newtouch.SystemConfig│ ├── newtouch.UpdateRootPass│ └── openstack.CreateServer├── setup_mysql.yml group_vars/all.yml 里需要设置 ansible_user: rootansible_ssh_pass: xxxxxxxxxxx 前提是 openstack 集群里的虚拟机镜像,root 密码相同。 默认值配置文件 roles/openstack.CreateServer/defaults/main.yml role 的默认值,根据实际情况,填入相关信息。以 vm_ 开头的变量是为了测试用,预设的。 auth: auth_url: http://192.168...
- 下一篇
Docker EE 2.0 版本尝鲜测评,带给您无与伦比的容器体验(二)
本文首发自“Docker公司”公众号(ID:docker-cn)编译丨小东每周一、三、五 与您不见不散! 我们很高兴地宣布,Docker Enterprise Edition 2.0 已经发布,这标志着 Docker 企业级容器平台又向前迈进了一大步。Docker Enterprise Edition (EE) 2.0 是唯一能在多 Linux、多操作系统和多云客户环境中管理部署在 Kubernetes 上的应用程序并确保其安全的平台。作为一个完整平台,Docker EE 2.0 可以与组织集成并随组织扩展,藉此可以灵活地选择支持的应用程序类型、使用的编排系统类型以及所部署的位置。它还能让组织使用简化的流程更加快速地运行 Kubernetes,并通过集成式安全解决方案交付更安全的应用程序。在本文中,我们将介绍 Docker EE 2.0 重要的新增功能的第二部分内容。第一部分内容可以点击下文链接查看:Docker EE 2.0 版本尝鲜测评,带给您无与伦比的容器体验(一); 打造安全的全球供应链 由于隔离程度加深而攻击面减少,因此容器的安全性得到了极大的提升。但是,要想提高应用程序的安...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS8编译安装MySQL8.0.19
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境