/images/avatar.jpeg

ubuntu18.04编译安装python3.8

下载

# 下载源码包至`opt`目录
wget -c -P /opt https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tar.xz
# 解压解包
tar - xvf Python-3.8.0.tar.xz 
cd Python-3.8.0

编译安装

# 更新系统
apt-get update
apt-get upgrade
apt-get dist-upgrade
# 安装依赖库
apt-get install libbz2-dev libncurses5-dev libgdbm-dev libgdbm-compat-dev liblzma-dev libsqlite3-dev libssl-dev openssl tk-dev uuid-dev libreadline-dev  python-dev

./configure --enable-optimizations --enable-shared
make -j8
make altinstall

运行测试

python3.8
# python3.8: error while loading shared libraries: libpython3.8.so.1.0: cannot open shared object file: No such file or directory

配置动态链接库路径

第一次攒机记录-1-基本配置

配置明细:

组件选型选型分析价格
CPU盒装AMD Ryzen 7 3700X4.4GHz Max Boost, 3.6GGz Base 7nm 8核16线程65w,性能强劲,性价比高2660.15(含主板)
主板MSI B450M PRO-VDH MAX集成声卡/网卡,最大内存容量64GB, 有较大扩展性
内存金士顿HX430C5PB3/16 SP549
显卡盈通 RX550 2G369
SSDSamsung SSD 970 EVO Plus 250G用做系统盘,秒启的秘密422.82
硬盘WD 蓝盘 20EZAZ RZ 2T数据盘340.03
电源先马金牌500W全模组338
机箱爱国者YOGO M2白色机箱很好看ヾ(o◕∀◕)ノヾ165.62
4844.62

CPU参数

lscpu

牵着你的手

牵起你的手,

我们十指相扣。

看着你涨红的脸庞,

我没有言由。


牵着你的手,

我们在林荫道下漫游。

望着你忽闪波动的目光,

我的灵在颤抖。


牵着你的手,

我知道你在我的身后。

突然一个转身,

Docker笔记-介绍

Docker 能做什么,与虚拟机区别:

与虚拟机区别, 每个虚拟机是一个操作系统。docker 是操作系统上的应用。

  1. 环境打包成镜像,自动化运行容器,打包部署自动化。
  2. 创建轻量,私密的PAAS环境。
  3. 实现自动化测试和持续的集成/部署。
  4. 部署与扩展webapp,数据库和后台服务。
  5. 完全沙箱机制。
项目传统虚拟机Docker虚拟机
占用空间大小
启动速度慢快
资源利用率低高
运行基础Hypervisor CPU虚拟化技术Linux内核虚拟化
部署复杂方便
隔离操作系统级别容器级别 基于namespace隔离
相互通信简单造作系统间通信复杂 容器间通信

Docker组成:

  1. Docker Client 客户端:通过API访问Docker Daemon 管理Docker镜像。
  2. Docker Daemon 守护进程:负责Docker镜像的创建,删除,启动,停止等服务。
  3. Docker Image镜像:“只读”系统。
  4. Docker Container 容器 Docker images的仓库 Docker Hub dockerhub.com

基础概念

  1. 镜像(Image): 特殊文件系统,除了提供容器运行时所需的程序,库,资源,配置文件外,还包含配置参数(匿名卷,环境变量,用户等)。不包含然和动态数据。构建之后也不会改变。 镜像构建时,会一层层构建,前一层是后一层基础。

Docker笔记-安装配置

dcoker Install

ubuntu

安装文档

Uninstall old versions

sudo apt-get remove docker docker-engine docker.io containerd runc

Install using the repository

sudo apt-get update

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo apt-key fingerprint 0EBFCD88

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

INSTALL DOCKER ENGINE

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

Verify

sudo docker run hello-world

Linux磁盘检测,分区与挂载

  • 新增1T磁盘一块
  1. 使用df -h查看当前硬盘信息(并未出现要挂在的磁盘)
文件系统        容量  已用  可用 已用% 挂载点
/dev/vda1        50G  5.0G   42G   11% /
devtmpfs        1.9G     0  1.9G    0% /dev
tmpfs           1.9G     0  1.9G    0% /dev/shm
tmpfs           1.9G  208M  1.7G   11% /run
tmpfs           1.9G     0  1.9G    0% /sys/fs/cgroup
tmpfs           383M     0  383M    0% /run/user/0
  1. 使用命令fdisk -l查看所有磁盘信息(包括未挂载磁盘)
磁盘 /dev/vda:53.7 GB, 53687091200 字节,104857600 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c4895
   设备 Boot      Start         End      Blocks   Id  System
/dev/vda1   *        2048   104857599    52427776   83  Linux

磁盘 /dev/vdb:1099.5 GB, 1099511627776 字节,2147483648 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘 /dev/vdb 为需要挂载的磁盘。 2. 通过lsblk查看

Nginx配置SSL证书

配置示例

server {
    listen       443 ssl;
    server_name  wxapi.aimiter.com;
    root html;

    index index.html index.htm;
    ssl_certificate      /etc/nginx/conf.d/cert.pem;
    ssl_certificate_key  /etc/nginx/conf.d/cert.key;

    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_prefer_server_ciphers  on;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;



    location / {
        # resolver 127.0.0.1;
        proxy_pass http://127.0.0.1:8080;
        #root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

}