前言
本文介绍如何在Docker安装一些我们常用的工具,如Python,Mysql,Nginx,Tomcat,Apache,Node.js等以及在安装这些工具遇到的问题和如何去解决。
Python安装
安装版本:Python 3.5
开始拉取镜像输入以下命令(如图1),在下载过程有一些慢我们也可以开启docker镜像加速。
docker pull python:3.5
![](https://i-blog.csdnimg.cn/blog_migrate/7c16d37cc9440b5737ba430568ac5c6f.png)
下载完后我们查看python镜像输入以下命令查看镜像,python 版本为3.5(如图2)
docker images
![](https://i-blog.csdnimg.cn/blog_migrate/4cadde05090d39888a5570b4bea3045e.png)
-
python程序
我们在主机上创建一个目录demo用于挂载(共享)在python容器以便访问文件
mkdir demo
在demo目录中新建一个demo.py中键入如图3保存退出。
cd demo ##进入demo目录
vi demo.py ##创建demo.py脚本
![](https://i-blog.csdnimg.cn/blog_migrate/306635f67b97ad23c2e617d5ff5d04e3.png)
-
挂载文件
把我把home/demo目录下的demo.py挂载到python容器上并以/usr/src/demo目录为活动目录(如图4)。
docker run -v /home/demo:/usr/src/demo -w /usr/src/demo python:3.5 python demo.py
![](https://i-blog.csdnimg.cn/blog_migrate/a61d108dfc7e044cda1ef8cdd892cf30.png)
Mysql安装
在Docker上安装Mysql数据库并不推荐,较大一点数据存储需要部署专门的数据库服务器。
-
拉取 MySQL 镜像
docker pull mysql:latest ##latest 表示最新的版本mysql
-
运行Mysql容器
最开始运行Mysql我们需要设置密码,本主机端口 :容器端口。
docker run -itd --name mysqlDemo -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
--name ##取名为mysqlDemo
-p ##设置端口
MYSQL_ROOT_PASSWORD=123456 ##设置 MySQL 服务 root 用户的密码
如图5看到运行成功
![](https://i-blog.csdnimg.cn/blog_migrate/a7a231e51547d6bd624f73b4eef6858e.png)
如何连接呢?
前面我射映本主机3308端口到Mysql容器3306端口,密码123456 (如图6)。
mysql -h 127.0.0.1 -u root -p -P 3308
-h ##指定连接IP
-u ##指定用户
-p ##指定密码(可以为空后面在输入)
-P ##指定连接端口
![](https://i-blog.csdnimg.cn/blog_migrate/6252afa1f8296dce692f669dd2e9f478.png)
Nginx安装
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,同时也是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强。
-
拉取Nginx 镜像
docker pull nginx:latest
-
运行容器
docker run --name nginxDemo -p 8080:80 -d nginx
##也可以挂载目录
docker run --name nginxDemo -p 8080:80 -v /home/nginx:/usr/local/nginx -d nginx
-d ##后台运行
如图7,8,我们只需要放开本机的防火墙放行8080端口就可以访问容器。
![](https://i-blog.csdnimg.cn/blog_migrate/dc343e02ac024c7e843bfa693b74f05e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/c5ea835505fb323cd2138abebb66ee94.png)
Tomcat安装
- 拉去镜像
docker pull tomcat:latest
如图9表示下载成功
![](https://i-blog.csdnimg.cn/blog_migrate/5d6c92a18e3e36b419640131594f2bf0.png)
- 运行容器
docker run --name tomcat -p 8081:8080 -v /home/tomcat:/usr/local/tomcat/webapps/test -d tomcat
重复容器出错
当出现如图10说明已经建立了一个同样容器我们删除在重新建立。
![](https://i-blog.csdnimg.cn/blog_migrate/aec6c712267f82381f2d767f11c0bf8f.png)
1.1 查看所有容器
docker ps -a
1.2 删除tomcat容器
docker rm 4f951f72981a
1.3 重新建立新容器
Apache安装
-
拉去镜像
docker pull httpd:latest
-
运行镜像
docker run --name httpDemo -p 8083:80 -v /home/apache:/usr/local/apache/htdocs/ -v /root/apache/conf/httpd.conf:/usr/local/apache/conf/httpd.conf -v /root/apache/logs/:/usr/local/apache/logs/ -d httpd
算了其它不演示了!大家有什么不懂留言私信懒得打字文采又不好。