Files
2025-03-17 11:08:13 +08:00
..
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00
2025-03-17 11:08:13 +08:00



需要三个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