一款免配置的浏览器编程工具jupyter,可以同时编写 python,java,c,c++,体积小

简介: 一款免配置的浏览器编程工具jupyter,可以同时编写 python,java,c,c++,体积小

针对 小白的镜像使用说明

docker是一款轻量化虚拟机软件,可以通过单条命令实现镜像迁移

本镜像说明,在我们学习编程的时候总是有很多的编程软件需要下载,每个语言的编程软件配置都很费时间,

而且不同的编程语言的软件都不一样,诸如 vscode ,vc6.0 ,pycharm ,idea ,eclips

即便是大佬习惯vim编程,jupyter也可以很好的满足你

下边开始介绍如何使用本教程的镜像


下载docker官网链接https://www.docker.com/

下载完成后,在windows 下安装docker ,linux 可以直接 yum,或者apt 直接安装docker

cmd检测docker是否安装成功
docker --version
输出  Docker version 19.03.5, build 633a0ea


安装完成后就可以使用镜像了

jupyter密码 lmklmk

ssh密码lmk19980312

镜像大小 1.5 g 包含jupyterlab conda gcc g++ java13 python37等语言编译器

#windows 下使用, 在命令行管理员身份执行下边一条命令
docker run -tdi   -p 20022:22  -p 20088:8888  --name   kernel1   --privileged=true  registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v2  init  | docker exec -d  kernel1   /bin/bash -c "cd /home && source /etc/profile && nohup jlab &"
#Linux 下使用
docker run -tdi   -p 20022:22  -p 20088:8888  --name   kernel1   --privileged=true  registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v2  init  &&  docker exec -d  kernel1   /bin/bash -c "cd /home && source /etc/profile && nohup jlab &"
英文字符版是 v1
中文字符版是 registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v2

执行完命令后就可以使用

localhost:20088

访问jupyter lab ,访问密码 lmklmk

然后就可以开始 各种语言的编程了, c++推荐选用c++17


教程正文结束,想学习docker构建镜像的朋友可以看下,下边的完整的镜像搭建过程,有能力的小伙伴,也可以帮忙添加更多的内核进去,比如 c# ,swift,javascript, 然后在博客回复留下你的,博客以及镜像地址

原始jupuyter环境创建

第一步先创建 一个 jupyterlab 环境

#windows命令
docker run -tdi   -p 10022:22  -p 18888:8888  --name jlab1   --privileged=true registry.cn-hangzhou.aliyuncs.com/mkmk/python37:al1  init | docker exec -d jlab1 /bin/bash -c "cd /jupyterlab && nohup jlab &"

安装c环境

环境中已经包含了 gcc

创建一个 文件写下 如下代码

 #include<stdio.h> int main() 
  {
     printf (" py helloWorld,Best wish!\n");
     return 0;   
  }


gcc cs1.c -o hello
./hellow 
输出
sh-4.2# ./hello
 py helloWorld,Best wish!

安装 c++ 环境

安装 g++

yum -y install gcc gcc-c++ kernel-devel cmake
安装成功
sh-4.2# g++ -v
Using built-in specs.
COLLECT_GCC=g++

创建文本文件写下如下 c++ 代码

cplus1.cpp

#include <iostream>
using namespace std;
int main()
{
    cout << "Hello, world!" << endl;
    return 0;
}

当直接 g++ cplus1.cpp 会固定生成 a.out 可执行文件

所以我们还是加上 -o 指定 生成的可执行文件的名字吧

g++ cplus1.cpp -o cplus1
./cplus1 
输出:
Hello, world!

安装 java 编译环境

yum -y install java-devel
安装完成输出
java -version
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)

编写java程序 h1.java

注意class 名称 要和 文件名称 保持一致

否则会发生报错

public class h1{
public static void main(String[] args){
System.out.print("Hello java!\n");
}
}

运行

javac h1.java && java h1
Hello java!

安装 conda

下载安装脚本
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
1
执行脚本安装
bash Miniconda3-latest-Linux-x86_64.sh
# 阅读说明
# 选择安装目录
/usr/local/miniconda3
# 是否安装vscode
# 是否添加环境变量
no
# 安装完成
source /usr/local/miniconda3/etc/profile.d/conda.sh
测试安装结果 查看版本
conda -V
conda 4.7.12
#修改为国内镜像源
conda清华源(TUNA)
vi  ~/.condarc
文件内容
channels:
  - defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

conda使用

conda  activate

安装 jupyterlab

安装过程:
1、在开始菜单中打开Anaconda Prompt
2、执行jupyter lab安装命令:conda install jupyterlab
3、升级jupyter内核和客户端:conda update jupyter_core jupyter_client
4、启动jupyter lab:jupyter lab
   启动jupyter notebook:jupyter notebook
[I 21:46:26.903 LabApp] 把notebook 服务cookie密码写入 /root/.local/share/jupyter/runtime/notebook_cookie_secret
jupyter notebook --generate-config
Writing default config to: /root/.jupyter/jupyter_notebook_config.py
vim /root/.jupyter/jupyter_notebook_config.py
将293行 #c.NotebookApp.token = '<generated>'修改为c.NotebookApp.token = 'password',则密码就改为password
c.NotebookApp.token = '<generated>'
c.NotebookApp.ip = '0.0.0.0'
c.NotebookApp.open_browser = False
c.NotebookApp.allow_root=True
jupyter lab --allow-root
密码会出现
 http://127.0.0.1:8888/?token=ff3f83a43662e499d09fcaf84aa62caa35c8dd90cfb0e4d8
nohup jupyter lab --allow-root &

安装 c kernel

#如果要用conda 安装pip 需要

conda install pip 
pip install jupyter-c-kernel
cd /usr/local/miniconda3/lib/python3.7/site-packages/jupyter_c_kernel
install_c_kernel
安装完成提示
#Installing IPython kernel spec
测试
#include<stdio.h>
int main()
  {
    printf (" py hello c program!\n"); 
    return 0;
   }
shift enter 执行
输出  Hello c++!

#pip直接安装

pip3 install jupyter-c-kernel
pip3 show jupyter-c-kernel
cd /usr/local/python37/lib/python3.7/site-packages/jupyter_c_kernel
install_c_kernel
安装成功
Installing IPython kernel spec

安装 c ++ kernel

conda install xeus-cling -c conda-forge
测试
#include <iostream>
std::cout << "Hello c++!" << std::endl;
shift enter 执行
输出  Hello c++!

安装 java kernel

安装jdk 高于版本8
mkdir /usr/local/java
tar -xf jdk-13_linux-x64_bin.tar.gz -C /usr/local/java
cd  /usr/local/java
vim /etc/profile
export JAVA_HOME=/usr/local/java/jdk-13
export JRE_HOME=/${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/libss:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
#下载  Ijava
wget https://github.com/SpencerPark/IJava/releases/download/v1.2.0/ijava-1.2.0.zip
unzip ijava-1.2.0.zip
python install.py --sys-prefix
jupyter kernelspec list
#重启jupyterlab
pkill -9 jlab 
cd /jupyterlab && nohup jlab &
source  /etc/locale.conf

镜像使用

jupyter密码 lmklmk

ssh密码lmk19980312

镜像大小 1.5 g 包含jupyterlab conda gcc g++ java13 python37等语言编译器

#windows 下使用
docker run -tdi   -p 20022:22  -p 20088:8888  --name   kernel1   --privileged=true  registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v1  init  | docker exec -d  kernel1   /bin/bash -c "cd /home && source /etc/profile && nohup jlab &"
#Linux 下使用
docker run -tdi   -p 20022:22  -p 20088:8888  --name   kernel1   --privileged=true  registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v1  init  &&  docker exec -d  kernel1   /bin/bash -c "cd /home && source /etc/profile && nohup jlab &"

upyter编程

点击左上角+号即可,创建,python ,c ,c++ ,java 语言直接编程

直接编程方式

除了jupyter编写c,c++,java,也可以在命令行终端,开发项目,点击左上角 + 号 创建命令行

python:    python ptest.py
c:        gcc ctest.c -o ctest && ./ctest
c++:       g++ cptest.cpp -o cptest && ./cptest
java:      javac jtest.java  && java jtest

Doker 常用命令

#查看镜像列表
docker images
#删除单个镜像
docker rmi image-id
#删除所有镜像
docker rmi $(docker images -q)
#查看运行中的容器
docker ps
#查看所有容器
docker ps -a
#停止单个容器
docker stop container-id
#停止所有容器
docker stop $(docker ps -a -q)
#删除单个容器
docker rm container-id
#删除所有容器
docker rm $(docker ps -a -q)
#删除系统数据
docker system prune
windows清空
docker stop $(docker ps -a -q) |  docker rm $(docker ps -a -q) | docker rmi $(docker images -q)
linux清空
docker stop $(docker ps -a -q)  &&  docker rm $(docker ps -a -q) && docker rmi $(docker images -q)

完整Dockerfile制作centos7中文字符集

        至此,可以基于以上方法,制作一个支持中文环境的Centos7镜像,完成的Dockerfile如下:
FROM  registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v1
# Install tools
RUN  yum -y install kde-l10n-Chinese telnet && \
       yum -y reinstall glibc-common &&\
              yum clean all  && \
                localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 && \
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ENV LANG=zh_CN.UTF-8 \
    LANGUAGE=zh_CN:zh \
    LC_ALL=zh_CN.UTF-8
# Define default command.
CMD ["bash"]
docker build -t registry.cn-hangzhou.aliyuncs.com/mkmk/conda:v2 .


相关文章
|
3月前
|
数据采集 Web App开发 JavaScript
无头浏览器技术:Python爬虫如何精准模拟搜索点击
无头浏览器技术:Python爬虫如何精准模拟搜索点击
|
3月前
|
算法 Java 数据库连接
Java 与 C++ 区别深入剖析及应用实例详解
本文深入剖析了Java和C++两种编程语言的区别,从编译与执行机制、面向对象特性、数据类型与变量、内存管理、异常处理等方面进行对比,并结合游戏开发、企业级应用开发、操作系统与嵌入式开发等实际场景分析其特点。Java以跨平台性强、自动内存管理著称,适合企业级应用;C++则因高性能和对硬件的直接访问能力,在游戏引擎和嵌入式系统中占据优势。开发者可根据项目需求选择合适语言,提升开发效率与软件质量。附面试资料链接:[点此获取](https://pan.quark.cn/s/4459235fee85)。
175 0
|
5月前
|
数据采集 JavaScript 前端开发
Pyppeteer实战:基于Python的无头浏览器控制新选择
本文详细讲解了如何使用 Pyppeteer 结合爬虫代理高效采集小红书热点推荐信息。通过设置代理 IP、Cookie 和自定义 User-Agent,突破目标网站的反爬机制,实现标题、内容和评论的数据提取。文章结合代码示例与技术关系图谱,清晰展示从数据采集到分析的全流程,为复杂网站的数据获取提供参考。读者可在此基础上优化异常处理、并发抓取等功能,提升爬虫性能。
291 8
|
6月前
|
机器学习/深度学习 数据采集 数据可视化
Python/Anaconda双方案加持!Jupyter Notebook全平台下载教程来袭
Jupyter Notebook 是一款交互式编程与数据科学分析工具,支持40多种编程语言,广泛应用于机器学习、数据清洗和学术研究。其核心优势包括实时执行代码片段、支持Markdown文档与LaTeX公式混排,并可导出HTML/PDF/幻灯片等格式。本文详细介绍了Jupyter Notebook的软件定位、特性、安装方案(Anaconda集成环境与原生Python+PIP安装)、首次运行配置及常见问题解决方案,帮助用户快速上手并高效使用该工具。
|
7月前
|
算法 Serverless 数据处理
从集思录可转债数据探秘:Python与C++实现的移动平均算法应用
本文探讨了如何利用移动平均算法分析集思录提供的可转债数据,帮助投资者把握价格趋势。通过Python和C++两种编程语言实现简单移动平均(SMA),展示了数据处理的具体方法。Python代码借助`pandas`库轻松计算5日SMA,而C++代码则通过高效的数据处理展示了SMA的计算过程。集思录平台提供了详尽且及时的可转债数据,助力投资者结合算法与社区讨论,做出更明智的投资决策。掌握这些工具和技术,有助于在复杂多变的金融市场中挖掘更多价值。
226 12
|
9月前
|
Java Android开发 C++
Java和C++
Java和C++
139 15
|
11月前
|
机器学习/深度学习 数据可视化 数据挖掘
【10月更文挑战第4天】「Mac上学Python 5」入门篇5 - Jupyter 环境配置与高效使用技巧
本篇将介绍如何在Mac系统上安装和配置Jupyter,并详细介绍Jupyter Notebook的一些常用“神奇函数”。Jupyter是一个支持交互式计算的工具,广泛用于数据分析、机器学习等领域,通过学习本篇,用户将能够在Python项目中高效使用Jupyter Notebook。
369 3
【10月更文挑战第4天】「Mac上学Python 5」入门篇5 - Jupyter 环境配置与高效使用技巧
|
10月前
|
数据采集 Web App开发 JavaScript
爬虫策略规避:Python爬虫的浏览器自动化
爬虫策略规避:Python爬虫的浏览器自动化
|
11月前
|
IDE Java 程序员
C++ 程序员的 Java 指南
一个 C++ 程序员自己总结的 Java 学习中应该注意的点。
86 5
WK
|
10月前
|
安全 Java 编译器
C++和Java哪个更好用
C++和Java各具优势,选择取决于项目需求、开发者偏好及目标平台特性。C++性能出色,适合游戏、实时系统等;Java平台独立性强,适合跨平台、安全敏感应用。C++提供硬件访问和灵活编程范式,Java有自动内存管理和丰富库支持。两者各有千秋,需根据具体需求选择。
WK
231 1

热门文章

最新文章

推荐镜像

更多