Alpine

  • 介绍
  • 基础配置方法
    • 网络配置
    • 安装软件包apk

介绍

Alpine 操作系统是一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,因此得到开源社区越来越多的青睐。在保持瘦身的同时,Alpine 还提供了自己的包管理工具 apk,可以通过 https://pkgs.alpinelinux.org/packages 网站上查询包信息,也可以直接通过 apk 命令直接查询和安装各种软件。

Alpine 由非商业组织维护的,支持广泛场景的 Linux发行版,它特别为资深/重度Linux用户而优化,关注安全,性能和资源效能。Alpine 镜像可以适用于更多常用场景,并且是一个优秀的可以适用于生产的基础系统/环境。

Alpine Docker 镜像也继承了 Alpine Linux 发行版的这些优势。相比于其他 Docker 镜像,它的容量非常小,仅仅只有 5 MB 左右(对比 Ubuntu 系列镜像接近 200 MB),且拥有非常友好的包管理机制。官方镜像来自 docker-alpine 项目。

目前 Docker 官方已开始推荐使用 Alpine 替代之前的 Ubuntu 做为基础镜像环境。这样会带来多个好处。包括镜像下载速度加快,镜像安全性提高,主机之间的切换更方便,占用更少磁盘空间等。

  • 小巧:基于Musl libc和busybox,和busybox一样小巧,最小的Docker镜像只有5MB;
  • 安全:面向安全的轻量发行版;
  • 简单:提供APK包管理工具,软件的搜索、安装、删除、升级都非常方便。
  • 适合容器使用:由于小巧、功能完备,非常适合作为容器的基础镜像。

下载地址:alpine-standard-3.15.0

基础配置方法


网络配置

dns
/etc/resolv.conf网卡配置文件/etc/network/interface
iface eth0 inet staticaddress 192.168.129.100netmask 255.255.255.0gateway 192.168.129.2或者iface eth0 inet dhcp修改过后要重启网卡
etc/init.d/networking restart

安装软件包apk

apk 相当于 yum
用法:apk[…]命令[…]
apk add --no-cache -U
add:安装   --no-cache:不使用缓存   -U:更新缓存

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**

用于文本方式查看网页,用于测试http协议

apk add curl

创建用户和组

//创建用户
adduser
-h          #创建家目录
-g          #用户的详细信息
-s          #登录shell
-G          #组
-S          #创建系统用户
-D          #不分配密码
-H          #不创建家目录
-u          #UID
-k          #创建框架目录//删除用户
deluser   xxx

查看系统版本

[root@localhost ~]# docker run -it --rm alpine /bin/sh
/ # cat /etc/issue
Welcome to Alpine Linux 3.15
Kernel \r on an \m (\l)

配置apk源

sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/' /etc/apk/repositoriesapk update

alpine服务管理工具

查看所有服务
rc-service --list添加开机自启动
rc-update add {service-name}

开启SSH服务

//安装openssh-server服务器
apk add openssh-server//修改配置文件/etc/ssh/sshd_config
如果要想使用root用户远程管理,需要修改参数为:
PermitRootLogin yes//将ssh服务配置为开机自动启动
rc-update add sshd//如果你想立刻生效,可以执行命令
/etc/init.d/sshd restart

设置时区

apk add tzdata
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo "Asia/Shanghai" > /etc/timezone

Alpine镜像介绍相关推荐

  1. docker使用alpine镜像

    alpine介绍 alpine简要介绍 Alpine 的意思是"高山的",比如 Alpine plants高山植物,Alpine skiing高山滑雪.the alpine res ...

  2. Alpine镜像中not found引出的gnu libc和musl libc的争论

    在一个使用旧版的Oracle的JDK的Alpine版本的镜像时出现了问题,这篇文章作为后续的整理,以此为契机,简单介绍一下Alpine版本中的musl libc和gnu libc的设定. 事前准备 运 ...

  3. Alpine镜像中时区的设置

    缺省状态下Alpine镜像下的timezone会设定成UTC,相较于东八区的CST北京时间来说本地时间比UTC早了8个小时.这篇文章介绍一下时区相关的基础知识以及如何在Alpine中将时间从UTC设定 ...

  4. docker中使用golang:alpine镜像制作开启goweb的dockerfile

    docker中使用golang:alpine镜像制作开启goweb的dockerfile go的web代码 package mainimport("net/http""f ...

  5. JEECG容器化部署:Alpine镜像方式

    在前面的一篇文章中提到了JEECG的Alpine镜像使用时出现的问题,就是验证码需要使用到fontmanager,而环境中的OPENJDK的JRE中又没有提供,所以退而求其次使用官方的Dockerfi ...

  6. docker-anpine镜像介绍

    Alpine 操作系统是一个面向安全的轻型 Linux 发行版.它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能 ...

  7. 【云原生】第四篇--Docker容器镜像介绍及应用

    Docker容器镜像介绍及应用 一.Docker容器镜像操作 1.1 查看本地容器镜像 1.1.1 使用docker images命令查看 1.1.2 使用docker image命令查看 1.1.3 ...

  8. 持续构建:NodeJS的Alpine镜像

    Alpine镜像目前并不能通过npm add来安装所有的npm和nodejs的版本,所以在easypack的Alping镜像中使用两种方式来进行NodeJS镜像的生成,Alpine中已经打包的直接使用 ...

  9. MySQL docker官方镜像介绍

    最近在学习docker,在使用mysql镜像时看到dockerhub上的mysql镜像介绍很详细,解决了我大部分疑惑,为了加深印象,决定翻译一下,初次尝试翻译英文文档,有误之处还请多多指教. 原文:m ...

最新文章

  1. xtrabackup之innobackupex命令参数
  2. JVM体系结构101:了解您的虚拟机
  3. “睡服”面试官系列第十八篇之generator函数的语法(建议收藏学习)
  4. 微服务启动顺序_基于华为云CSE微服务接口兼容常见问题
  5. wamp修改默认80端口
  6. java反编译使用报错_Java反编译class
  7. 电力系统分析第三章课后题(李庚银)
  8. 打太极不协调的二三事
  9. 如何在Mac上合并照片库?
  10. 2年了,我逃离北上广,后悔了么?
  11. 教学管理文件信息检索系统设计与实现
  12. mysql将数字月份替换成文月份_mysql必知必会--使用数据处理函数
  13. 在线教育平台项目——需求分析
  14. 一个团队(很多人)都存在的共性问题
  15. ScrollView和GestureDetector触屏事件冲突
  16. 前端基础 CSS 第十一章 使用CSS样式表 ----暑假学习第七、八天
  17. 中关村软件园与百度飞桨启动AI人才培养计划:AI发展,人才先行
  18. 基于蚁群算法的多配送中心的车辆调度问题的研究附Matlab代码
  19. 如何用PDF编辑器修改PDF文字
  20. 前端移动Web第四天案例:阿里百秀首页-响应式布局(bootstrap框架)

热门文章

  1. 基于android餐馆点餐系统报告感想,基于Android的餐厅点餐系统的设计与实现
  2. 5G+急诊救治 - 5G救护车远程会诊智慧医疗解决方案
  3. 漫谈程序员系列:怎么告别“混日子”
  4. vs2019添加文件夹到到现有项目
  5. NETCONF配置CISCO XE(csr1000v)初体验
  6. 《浪潮之巅》作者吴军:把握技术革命的浪尖
  7. 从Dinic到ISAP,从余流推进到最高标号的预留推进HLPP(究极最大流算法)
  8. 《金字塔原理》读书思维导图
  9. 此应用专为旧版Android打造,因此可能无法正常运行。请尝试检查更新或与开发者联系
  10. 吉林大学计算机学数A吗,2020考研:没有A+学科的985你还会去吗?