86 lines
2.8 KiB
Plaintext
86 lines
2.8 KiB
Plaintext
|
||
需要三个container:
|
||
用来执行应用的容器,使用python环境调用tushare
|
||
数据库mysql (可选加个redis)
|
||
用来呈现结果的web环境,安装phpamdin
|
||
三个容器使用相同的网络,以便于互联。
|
||
由于windows下,使用volume管理的数据,无法直接可用,因此用mount方式
|
||
|
||
// 创建网络
|
||
docker network create stock-net
|
||
|
||
// 创建应用容器
|
||
docker run -itd -p 2022:22 --name stockapp --network stock-net --mount type=bind,source=D:\AppData\docker-project\stock\,destination=/data/ ubuntu:latest
|
||
-- 安装软件
|
||
apt-get update
|
||
apt-get install python3-pip
|
||
pip3 install --upgrade pip
|
||
pip install tushare -i https://pypi.tuna.tsinghua.edu.cn/simple
|
||
apt-get install mysql-client
|
||
|
||
docker inspect stockdb | grep IPAddress 记录mysql的ip地址,程序中使用
|
||
|
||
|
||
|
||
// 创建数据库
|
||
docker run -d -p 2036:3306 --name stockdb --network stock-net --mount type=bind,source=D:\AppData\docker-project\mysql-data\,destination=/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysqlpw -e MYSQL_DATABASE=stockdb mysql:5.7
|
||
|
||
// 创建web服务器
|
||
docker run -itd -p 2080:80 --name stockweb --network stock-net --mount type=bind,source=D:\AppData\docker-project\stock\,destination=/data/ ubuntu:latest
|
||
|
||
-- 安装phpamdin
|
||
apt-get install apache2
|
||
apt-get install php
|
||
apt-get install libapache2-mod-php
|
||
apt-get install php-gd
|
||
apt-get install php-curl
|
||
apt-get install php-mysql
|
||
apt-get install phpmyadmin
|
||
过程中可以忽略掉db的配置,等安装完成后再单独配置,配置文件在 /etc/phpmyadmin/config-db.php
|
||
// 启动phpadmin
|
||
service apache2 restart
|
||
// phpadmin 登录账号
|
||
root mysqlpw
|
||
|
||
//登录地址,不能用localhost。ipconfig找到本机地址,然后用2080端口访问:
|
||
http://192.168.3.199:2080/phpmyadmin
|
||
|
||
|
||
PS C:\Users\PC> docker run -d `
|
||
>> --network stock-net --network-alias mysql `
|
||
>> -v mysql-data:D:\AppData\wsl\mysql-data `
|
||
>> -e MYSQL_ROOT_PASSWORD=mysqlpw `
|
||
>> -e MYSQL_DATABASE=testdb `
|
||
>> mysql:5.7
|
||
|
||
|
||
PS C:\Users\PC> docker run -itd `
|
||
>> --network stock-net `
|
||
>> -e MYSQL_HOST=mysql `
|
||
>> -e MYSQL_USER=root `
|
||
>> -e MYSQL_PASSWORD=mysqlpw `
|
||
>> -e MYSQL_DB=testdb `
|
||
>> ubuntu:latest
|
||
|
||
docker inspect -f {{".NetworkSettings.IPAddress"}} stockdb
|
||
|
||
|
||
All stock income data process succ! total stocks: 4822, total rows: 136268
|
||
|
||
|
||
-- ubuntu 镜像支持ssh登录
|
||
// 创建时指定ssh的端口映射
|
||
docker run -itd -p 2022:22 --name stockapp --network stock-net ubuntu:latest
|
||
// 创建好之后登录容器,安装ssh
|
||
apt-get update
|
||
apt-get install openssh-server
|
||
apt-get install openssh-client
|
||
// 修改配置文件,支持密码登录
|
||
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
|
||
echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
|
||
// 修改root密码
|
||
echo "root:root" | chpasswd
|
||
// 重启ssh
|
||
/etc/init.d/ssh restart
|
||
|