develop environ for python, include pandas, numpy, excel ......
625
基于centos8.2制作,安装git/sshd,中文支持。
登录密码 root pentakill
基于此镜像的镜像需要在 Dockerfile中的 EntryPoint 中加入 /usr/sbin/sshd -D 才能启动sshd服务。
FROM centos:8.2.2004
### root:pentakill
### author label
LABEL maintainer="HaiFeng"
### 解决ssh连接后丢失 docker run ... -e 设置的环境变量的问题
RUN echo "export \$(cat /proc/1/environ |tr '\0' '\n' | xargs)" >> ~/.bashrc
### 密码 # 配置 ll #修改时区 # 注意密码长度>8
RUN echo "root:pentakill" | chpasswd \
&& echo "alias ll='ls $LS_OPTIONS -lh --color=auto'" >> ~/.bashrc \
&& rm -rf /etc/localtime && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo "keepcache=0" >> /etc/yum.conf
### 换源(在hub.docker中导致安装应用过慢)
RUN sed -i \
-e 's|^mirrorlist=|#mirrorlist=|' \
-e 's|^#baseurl=|baseurl=|' \
-e 's|http://mirror.centos.org|https://mirrors.aliyun.com|' \
/etc/yum.repos.d/*.repo
RUN yum clean all && yum makecache
#升级
RUN yum -y update --refresh
# 安装 python 3.6
RUN yum install python3 python3-devel -y \
&& ln -s /usr/bin/python3.6 /usr/bin/python \
&& ln -s /usr/bin/pip3.6 /usr/bin/pip \
# python换源
&& mkdir -p ~/.pip/ \
&& echo $'[global]\n\
timeout = 6000\n\
index-url = https://pypi.tuna.tsinghua.edu.cn/simple\n\
[install]\n\
trusted-host = mirrors.aliyun.com\n'\
> ~/.pip/pip.conf
### 安装git sshd服务 中文环境
# 使用 locale -a 检查中文支持是否正常
RUN yum install git openssh-server langpacks-zh_CN.noarch -y
# 安装oracle驱动
RUN yum install -y unzip libnsl openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel postgresql-devel bzip2 make gcc gcc-c++ epel-release libaio \
&& mkdir -p /opt/oracle && cd /opt/oracle \
&& curl -o ora.zip \
https://download.oracle.com/otn_software/linux/instantclient/195000/instantclient-basic-linux.x64-19.5.0.0.0dbru.zip \
&& unzip ora.zip \
&& sh -c "echo /opt/oracle/instantclient_19_5 > /etc/ld.so.conf.d/oracle-instantclient.conf" \
&& ldconfig \
&& mkdir -p /opt/oracle/instantclient_19_5/network/admin && rm -f ora.zip
# 安装python组件
RUN pip install --no-cache-dir --upgrade pip \
&& pip install --no-cache-dir pandas msgpack cx_Oracle SQLAlchemy paramiko redis psycopg2-binary xmltodict py_smtp color_log PyYAML pyecharts pipreqs twine openpyxl xlrd xlwt flask waitress pymysql py_ctp
# 安装ta-lib
ADD ta-lib-0.4.0-src.tar.gz .
RUN cd ta-lib/; \
./configure --prefix=/usr; \
make && make install; \
pip install --upgrade pip; \
pip install --no-cache-dir numpy; \
# 支持将order写入pg
pip install ta-lib;
ENV LANG zh_CN.UTF-8
ENV LC_ALL zh_CN.UTF-8
ENV LD_LIBRARY_PATH /opt/oracle/instantclient_19_5:\$LD_LIBRARY_PATH
### port
EXPOSE 22
## 启动sshd
RUN yum clean all \
&& ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N '' \
&& ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' \
&& ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N '' \
&& rm -rf /run/nologin
ENTRYPOINT ["/usr/sbin/sshd", "-D"]
docker build -t haifengat/devpy:8.2.`date +%Y%m%d` . \
&& docker push haifengat/devpy:8.2.`date +%Y%m%d`
version: "3.7"
services:
devpy:
image: haifengat/devpy:8.2.1213
container_name: devpy
restart: always
ports:
- "2222:22"
environment:
- TZ=Asia/Shanghai
volumes:
# 生成id_isa添加到gitee,实现git push
- ./ssh:/root/.ssh
# git 配置信息 user.name user.email
- ./gitconfig:/root/.gitconfig:ro
# vscode服务端(一次安装长期使用)
- ./.vscode-server:/root/.vscode-server
# code
- /mnt/code:/home/code
增加talib 方便策略开发
Content type
Image
Digest
Size
484.3 MB
Last updated
about 6 years ago
docker pull haifengat/devpy