一、MySQL容器

拉取步骤

这里我们拉取官方的镜像,标签为5.7
docker pull mysql:5.7

使用mysql镜像运行容器
docker run -p 3306:3306 --name mymysql -v $PWD/MySQL/conf.d:/etc/mysql/conf.d \
-v $PWD/MySQL/logs:/logs \
-v $PWD/MySQL/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

命令说明:

-p 3306:3306:将容器的3306端口映射到主机的3306端口

-v $PWD/conf/my.cnf:/etc/mysql/my.cnf:将主机当前目录下的conf/my.cnf挂载到容器的/etc/mysql/my.cnf

-v $PWD/logs:/logs:将主机当前目录下的logs目录挂载到容器的/logs

-v $PWD/data:/mysql_data:将主机当前目录下的data目录挂载到容器的/mysql_data

-e MYSQL_ROOT_PASSWORD=123456:初始化root用户的密码

查看容器启动情况
docker ps -a
View Code

 

安装成功后进入数据库操作 

④进入容器
docker exec -it 容器id或名称 /bin/bash 注:容器开启的状态下
cd /root/ 切换到容器的家目录下,ls可以查看是否有sql文件


⑤连接数据库
mysql -uroot –p密码 如:mysql -uroot –ppassword

⑥创建库
create database tesudrm charset=utf8;
show databases; 查看库是否创建成功

⑦注意:导入文件需要在容器的内部,而不是在数据库mysql中执行
退出mysql:Ctrl+D

cd /root/ 切换到容器的家目录下面执行导入sql文件
mysql -uroot -ppassword tesudrm< tesudrm.sql 

进入到数据库中:mysql –uroot –ppassword
use tesudrm;
show tables; 

⑧退出mysql以及mysql容器
Ctrl+P+Q 或 exit
View Code

 

二、Centos7安装python应用

1.1 建立Dockerfile

vim Dockerfile

FROM centos/python-36-centos7
MAINTAINER bobby
USER root
ADD hello.py /home/    #一个简单的flask程序,将当前目录下的py文件添加到容器的/home下
ADD hello.ini /home/   #uwsgi配置文件
ADD entry-point.sh  /home/  #shell脚本
WORKDIR /home

# 下载程序安装包
RUN pip install flask -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
RUN pip install uwsgi -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
RUN pip install flask_sqlalchemy -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
RUN pip install pymysql -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
# 或者  RUN pip install -r requirements.txt

ENTRYPOINT [ "/bin/bash", "/home/entry-point.sh"]
#ENTRYPOINT  uwsgi --ini /home/hello.ini
#CMD ["uwsgi","--ini", "/home/hello.ini"] #启动uwsgi
View Code

 

vim entry-point.sh #启动文件

if [ -e /debug1 ]; then
echo "Running app in debug mode!"
python /home/hello.ini
else
echo "Running app in production mode!"
uwsgi --ini /home/hello.ini
tail -f /home/hello.ini
fi
View Code

 

vim hello.ini #uwsgi配置文件 

[uwsgi]
# htmlWeb.py文件所在目录
#plugins = python3
chdir  = /home
callable = app
# flask文件名
wsgi-file= hello.py
# 进程数
processes   = 4
# 使用5000端口
http = 0.0.0.0:5000
# 日志输出目录
#daemonize = /home/hello.log
pidfile = /home/project-master.pid
View Code

相关文章:

  • 2022-12-23
  • 2021-11-04
  • 2022-12-23
  • 2021-07-15
  • 2022-12-23
  • 2020-04-14
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-05-23
  • 2019-06-28
  • 2021-08-25
  • 2022-12-23
  • 2021-11-28
  • 2021-12-28
相关资源
相似解决方案