docker 安装tomcat容器和mysql容器
1. docker pull mysql:5.6
2.docker run -p 3306:3306 --name mysql -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=12345678 -d mysql:5.6
解释:
需要说明的是宿主机中的/data/mysql/conf或data或logs可以不用事先创建,执行完上面的语句后,会自动创建的
命令说明:
-p 12345:3306:将主机的12345端口映射到docker容器的3306端口。
--name mysql:运行服务名字
-v /data/mysql/conf:/etc/mysql/conf.d :将主机/data/mysql录下的conf/my.cnf 挂载到容器的 /etc/mysql/conf.d
-v /data/mysql/logs:/logs:将主机/data/mysql目录下的 logs 目录挂载到容器的 /logs。
-v /data/mysql/data:/var/lib/mysql :将主机/data/mysql目录下的data目录挂载到容器的 /var/lib/mysql
-e MYSQL_ROOT_PASSWORD=12345678:初始化 root 用户的密码。
-d mysql:5.6 : 后台程序运行mysql5.6
3. 在宿主机的 /data/mysql/conf目录下创建my.cnf vi /data/mysql/conf
其内容为:
links=0
lower_case_table_name=1
character-set-server=utf8
collation-server=utf8_general_ci
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
log-slow-queries=/var/log/mysqllog/myslow.log
long_query_time=1
到此mysql容器创建完毕,可以用nvcat远程连接了,阿里云的云服务需要开通上面你自己指定的端口 0.0.0.0/0
需要通过指令 docker inspect mysql容器id 查找到mysql的docker容器地址:
docker创建tomcat容器:
1.docker pull tomcat:7
修改war包中涉及到数据库的地址、端口、数据库名称
2.docker run --name tomcaties -p 9080:8080 -v /usr/local/ies.war:/usr/local/tomcat/webapps/ies.war tomcat:7
第一个是对外暴露的tomcat端口(供api访问的)后面的是war包,需要传到/usr/local/文件夹下
可以通过 docker logs -f -t 容器id 查看容器的日志