- docker pull MySQL:5.6
- 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 查看容器的日志
来源: http://www.bubuko.com/infodetail-3105075.html