Alpine Linux 使用简介Docker常用操作系统

  • Post author:
  • Post category:linux

Alpine简要介绍

Alpine Linux 网站首页注明“Small!Simple!Secure!Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.”概括了以下特点:

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

Alpine本地安装

Alpine Linux是一个完整的操作系统,像其他操作系统一样,可以将Alpine安装到本地硬盘中。

Alpine在Docker下运行

Docker下的运行

官方 Alpine 镜像的文档:http://gliderlabs.viewdocs.io/docker-alpine/
可以使用Docker Toolbox,创建一台Docker虚拟主机,在该主机的Docker环境下运行alpine的 Docker容器。该容器就是一个Alpine Linux系统,

docker pull alpine
docker run -it --name myalpine alpine

作为Docker容器的基础镜像

以Alpine为基础镜像,创建一个MySQL容器,镜像大小只有36.5MB,同样的方式使用Ubuntu系统作为基础镜像,镜像大小有184MB,

Dockerfile文件的内容:

FROM alpine:3.6

RUN apk add --no-cache mysql-client

ENTRYPOINT ["mysql"]

创建一个test/mysqlclient:1.0镜像

docker build -t test/mysqlclient:1.0 .

Alpine的配置和使用

网络相关文件

hostname -F /etc/hostname  #使用新设置的主机名立刻生效,执行如下命令
/etc/hosts  #主机IP和域名映射文件
/etc/resolv.conf  #DNS 服务器配置文件
/etc/network/interfaces  #网卡配置文件
/etc/init.d/networking restart #重新启动网络服务
网络相关的文档,详细参见:https://wiki.alpinelinux.org/wiki/Configure_Networking

更新国内源

Alpine的源文件为:/etc/apk/repositories
默认的源地址为:http://dl-cdn.alpinelinux.org/
可以编辑源文件 /etc/apk/repositories,

采用国内阿里云的源,文件内容为:

https://mirrors.aliyun.com/alpine/v3.6/main/
https://mirrors.aliyun.com/alpine/v3.6/community/

如果采用中国科技大学的源,文件内容为:

https://mirrors.ustc.edu.cn/alpine/v3.6/main/
https://mirrors.ustc.edu.cn/alpine/v3.6/community/

软件包管理工具apk的基本使用

alpine 提供了非常好用的apk软件包管理工具,可以方便地安装、删除、更新软件。

docker exec -it -u root dda09517cd46 /bin/bash  #指定用户root,进入容器,一些操作非root用户会提示权限不足
apk search openssh  #查询openssh相关的软件包
apk add xxx  #安装一个软件包
apk del xxx  #删除已安装的xxx软件包
apk --help  #获取更多apk包管理的命令参数
apk update   #更新软件包索引文件
apk add curl  #用于文本方式查看网页,用于测试http协议
apk add drill #drill 命令可以替代dig和nslookup DNS查询命令
curl 192.168.3.166  #测试192.168.3.166的80端口,查看web服务是否能正常访问。
ss -ta  #查看建立的TCP连接
drill blog.csdn.net @8.8.8.8   #查询域名的信息
drill -x 8.8.8.8 @47.94.71.34   #根据IP地址,反向查找域名

开启SSH服务

安装openssh-server服务器

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

安装nginx

安装Nginx软件并更新到最新

apk add --update nginx   #安装并更新nginx
/etc/init.d/nginx #启动Nginx
rc-update add nginx  #将Nginx添加到启动服务中,下次开机自动运行
#测试Nginx服务是否正常,使用curl访问,
#默认配置会返回nginx的404页面错误,标明服务已正常:
curl 192.168.3.166

版权声明:本文为weixin_43258559原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。