Alpine基础用法
Alpine基础用法
简介
alpine是一个轻量级的Linux发行版本,轻量级不仅体现在其占用空间的大小,还因为他没有图形化界面,只有命令行界面。
alpine特点:
小巧:基于Musl libc和busybox,和busybox一样小巧,最小的Docker镜像只有5MB;
安全:面向安全的轻量发行版;
简单:提供APK包管理工具,软件的搜索、安装、删除、升级都非常方便。
适合容器使用:由于小巧、功能完备,非常适合作为容器的基础镜像。
alpine国内源
清华大学:https://mirror.tuna.tsinghua.edu.cn/alpine/
阿里云:https://mirrors.aliyun.com/alpine/
网易:http://mirrors.163.com/
配置阿里云镜像源方法: (同理其他的也是一样的)
a. 编辑 /etc/apk/repositories
b. 将里面 dl-cdn.alpinelinux.org 的 改成 mirrors.aliyun.com ; 保存退出即可
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
基本命令使用
apk 相当于 yum
用法:apk[…]命令[…]
apk update 更新
apk update #更新最新镜像源列表
apk search 查找
apk search #查找所以可用软件包
apk search -v #查找所以可用软件包及其描述内容
apk search -v 'acf*' #通过软件包名称查找软件包
apk search -v -d 'docker' #通过描述文件查找特定的软件包
apk add 安装
apk add openssh #安装一个软件
apk add openssh openntp vim #安装多个软件
apk add --no-cache -U apache2 #不使用本地镜像源缓存,相当于先执行update,再执行add
apk info 查看已安装
apk info #列出所有已安装的软件包
apk info -a zlib #显示完整的软件包信息
apk info --who-owns /sbin/lbu #显示指定文件属于的包
apk upgrade 升级
apk upgrade #升级所有软件
apk upgrade openssh #升级指定软件
apk upgrade openssh openntp vim #升级多个软件
apk add --upgrade busybox #指定升级部分软件包
apk del 卸载
apk del openssh #删除一个软件add: **相当于install**
del: **相当于remove**
创建用户和组
//创建用户
adduser
-h #创建家目录
-g #用户的详细信息
-s #登录shell
-G #组
-S #创建系统用户
-D #不分配密码
-H #不创建家目录
-u #UID
-k #创建框架目录//删除用户
deluser
Alpinel 编译软件注意事项
1. 使用国内镜像,加速下载2. 安装 autoconf(无 configure 脚本时):apk add --no-cache -U autoconf3. 安装 C 编译器:apk add --no-cache -U gcc、apk add --no-cache -U libc-dev4. 安装 make5. 安装 linux 内核文件头 linux-headers:apk add --no-cache -U linux-headers6. 报:/usr/lib/gcc/x86_64-alpine-linux-musl/8.3.0/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find Scrt1.o: No such file or directory/usr/lib/gcc/x86_64-alpine-linux-musl/8.3.0/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find crti.o: No such file or directory/usr/lib/gcc/x86_64-alpine-linux-musl/8.3.0/../../../../x86_64-alpine-linux-musl/bin/ld: cannot find -lssp_nonshared错误时需要安装 libc-dev:apk add --no-cache -U libc-dev7. 报 No curses library functions found,需安装 ncurses-dev:apk add --no-cache -U ncurses-dev8. Cannot locate header file libintl.h,需安装 gettext-dev:apk add --no-cache -U gettext-dev9. 安装 curl-dev 和 openssl-dev 时报:ERROR: unsatisfiable constraints:libressl-dev-2.7.5-r0:conflicts: openssl-dev-1.0.2r-r0[pc:libcrypto=2.7.5] openssl-dev-1.0.2r-r0[pc:libssl=2.7.5] openssl-dev-1.0.2r-r0[pc:openssl=2.7.5]satisfies: curl-dev-7.61.1-r2[libressl-dev] libssh2-dev-1.8.2-r0[pc:libcrypto] libssh2-dev-1.8.2-r0[pc:libssl]openssl-dev-1.0.2r-r0:conflicts: libressl-dev-2.7.5-r0[pc:libcrypto=1.0.2r] libressl-dev-2.7.5-r0[pc:libssl=1.0.2r] libressl-dev-2.7.5-r0[pc:openssl=1.0.2r]satisfies: world[openssl-dev] libssh2-dev-1.8.2-r0[pc:libcrypto] libssh2-dev-1.8.2-r0[pc:libssl]需改成 apk add --no-cache -U libressl-dev、apk add --no-cache -U curl-dev10. configure: error: Invalid C++ compiler or C++ compiler flags : apk add --no-cache -U g++
Alpine基础用法相关推荐
- 【docker基础用法】
docker基础用法 文章目录 docker基础用法 什么是docker OCI&OCF OCI OCF 断续器 docker架构 docker镜像与镜像仓库 docker对象 安装及使用do ...
- Pandas基础用法合集(中文官档)
本节介绍 pandas 数据结构的基础用法.下列代码创建示例数据对象: In [1]: index = pd.date_range('1/1/2000', periods=8) In [2]: s = ...
- Promise基础用法
什么是Promise? Promise是用来处理异步的; Promise就是承诺,对未来的承诺; 所谓的Promise(承诺),里面保存着未来才会结束的事件的结果; Promise是异步编程的一种解决 ...
- pandas object转float_数据分析篇 | Pandas基础用法6【完结篇】
这是最后一篇,至此Pandas系列终于连载完了,有需要的也可以看看前面6篇,尽请收藏. 数据分析篇 | Pandas 概览 数据分析篇 | Pandas基础用法1数据分析篇 | Pandas基础用法2 ...
- dubbo官方文档中文_Pandas中文官方文档:基础用法5
本文授权转载自Python大咖谈禁止二次转载 大家好,我是老表 阅读文本大概需要 16 分钟 建议从头开始学习,本系列前四篇 Pandas中文官方文档:基础用法1 Pandas中文官方文档:基础用法2 ...
- struct用法_精讲响应式webclient第1篇-响应式非阻塞IO与基础用法
笔者在之前已经写了一系列的关于RestTemplate的文章,如下: 精讲RestTemplate第1篇-在Spring或非Spring环境下如何使用 精讲RestTemplate第2篇-多种底层HT ...
- Promise详解(一) ----基础用法
什么是Promise Promise是由社区最早提出并实现的,后加入到es6规范中.为更好处理javascript异步问题,用于解决其多次异步回掉嵌套问题.下面先尝试下promise的基础用法吧. 创 ...
- ORACLE的基础用法
ORACLE的基础用法 转 自:http://blog.163.com/kelly_19831017/blog/static/6196787020083133348873/ sqlplus sys/o ...
- MongoDB 基础用法及学习笔记
MongoDB 基础用法 环境配置与安装 安装 查看MongoDB版本 启动MongoDB服务 检查服务状态 启动服务 打开配置文件,连接MongoDB 查看数据列表 退出 MongoDB 连接 Mo ...
最新文章
- 综合评价模型的缺点_浅谈交通影响评价中不同交通预测方法的特性
- MES系统模块设计之物料控制 Material Control -- 1
- javascript 与vbscript 互相调用
- mysql从表截取信息_mysql中循环截取用户信息并插入到目标表对应的字段中
- Java面试题:线程实现的两种方式及匿名内部类实现
- 3-7 DNA序列(DNA Consensus String, ACM/ICPC Seoul 2006, UVa1368)
- python的常量和变量_python中的常量和变量代码详解
- C源文件到ELF可执行文件的生成过程
- mySQL及可视化界面navicat在window的配置
- Windows系统下载Android源码
- 高并发高可用高性能的解决方案
- 堆栈平衡(子程序调用)
- 【C++】1079:计算分数加减表达式的值(信息学奥赛)
- Clipboard.js实现复制文本到剪贴板功能
- 【水文】2345——卸载!拜拜了您嘞
- Ubuntu网络域名解析失败记录
- google 语音识别 VS 百度语音识别
- bug:点击element的级联选择器 级联面板偶尔不显示 触发条件未知
- 弘辽科技:淘宝老链接很难做起来吗?淘宝老链接如何做起来?
- think python 第9章 case study:word play