Alpine Linux使用簡介

Alpine Linux使用簡介html

目錄:mysql

1、Alpine簡要介紹linux

2、Alpine本地安裝nginx

3、Alpine在Docker下運行web

4、Alpine的配置和使用sql

    4.1網絡相關文件docker

    4.2更新國內源shell

    4.3軟件包管理工具apk的基本使用安全

    4.4開啓SSH服務服務器

    4.5安裝nginx

 

1、Alpine簡要介紹

    Alpine 的意思是「高山的」,好比 Alpine plants高山植物,Alpine skiing高山滑雪、the alpine resort阿爾卑斯山勝地。

    Alpine Linux 網站首頁註明「Small!Simple!Secure!Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.」歸納瞭如下特色:

一、小巧:基於Musl libc和busybox,和busybox同樣小巧,最小的Docker鏡像只有5MB;

二、安全:面向安全的輕量發行版;

三、簡單:提供APK包管理工具,軟件的搜索、安裝、刪除、升級都很是方便。

四、適合容器使用:因爲小巧、功能完備,很是適合做爲容器的基礎鏡像。

 

2、Alpine本地安裝

Alpine Linux是一個完整的操做系統,像其餘操做系統同樣,能夠將Alpine安裝到本地硬盤中。咱們能夠建立一個VirtualBox虛擬機,在VirtualBox 下安裝該系統,以便進行測試使用。具體安裝過程,參見我寫的另外一篇文章《Alpine linux硬盤安裝》,地址:http://blog.csdn.net/csdn_duomaomao/article/details/76053229。

主要是在安裝過程當中,指定一些電腦的基本設置,好比鍵盤佈局、主機名、網卡、IP地址、root口令修改、時區設置、軟件倉庫地址、SSH服務器、NTP客戶端、系統安裝方式、磁盤格式化等。

 

3、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 .

 

4、Alpine的配置和使用

 

4.1網絡相關文件

#主機名文件

/etc/hostname    

#使用新設置的主機名馬上生效,執行以下命令:

hostname -F /etc/hostname   

 

#主機IP和域名映射文件

/etc/hosts    

#文件內容爲:

192.168.99.100    alpine.csdn.net

 

#DNS 服務器配置文件

/etc/resolv.conf   

#文件內容爲:

nameserver 218.2.135.1

nameserver 202.102.24.35

 

#網卡配置文件

/etc/network/interfaces

#文件內容爲

auto lo

iface lo inet loopback

 

auto eth0

iface eth0 inet static

      address 192.168.3.166

      netmask 255.255.255.0

      gateway 192.168.3.254

 

#修改完相關配置之後,從新啓動網絡服務:

/etc/init.d/networking restart

 

網絡相關的文檔,詳細參見:https://wiki.alpinelinux.org/wiki/Configure_Networking

 

4.2更新國內源

# 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/

 

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

alpine 提供了很是好用的apk軟件包管理工具,

能夠方便地安裝、刪除、更新軟件。

#查詢openssh相關的軟件包

apk search  openssh   

#安裝一個軟件包

apk add  xxx   

#刪除已安裝的xxx軟件包

apk del  xxx   

#獲取更多apk包管理的命令參數

apk --help   

 

#好比安裝經常使用的網絡相關工具:

#更新軟件包索引文件

apk update    

#用於文本方式查看網頁,用於測試http協議

apk add curl  

#提供了查看網絡鏈接的協議端口的命令ss,能夠替代netstat命令

apk add iproute2  

#drill 命令能夠替代dig和nslookup DNS查詢命令

apk add drill   

 

 #測試192.168.3.166的80端口,查看web服務是否能正常訪問。

curl 192.168.3.166  

#查看創建的TCP鏈接

ss -ta   

#查詢域名的信息

drill blog.csdn.net @8.8.8.8    

#根據IP地址,反向查找域名

drill -x 8.8.8.8 @47.94.71.34    

 

4.4開啓SSH服務

#安裝openssh-server服務器

apk add openssh-server

 

#修改配置文件 /etc/ssh/sshd_config,

#若是要想使用root用戶遠程管理,須要修改參數爲:

PermitRootLogin yes

 

#將ssh服務配置爲開機自動啓動

 rc-update add sshd

 

#若是你想馬上生效,能夠執行命令:

/etc/init.d/sshd restart

 

 

4.5安裝nginx

#安裝Nginx軟件並更新到最新,

apk add --update nginx   

#手工啓動Nginx

/etc/init.d/nginx  

#將Nginx添加到啓動服務中,下次開機自動運行

rc-update add nginx    

 

#測試Nginx服務是否正常,使用curl訪問,

#默認配置會返回nginx的404頁面錯誤,標明服務已正常:

curl 192.168.3.166

 

【附圖】

01-在Docker主機中,下載alpine鏡像

 

02-查看鏡像信息,運行alpine容器,查看容器信息

 

03-在Alpine容器系統中安裝經常使用網絡工具-完成部分安裝

 

04-完成經常使用網絡工具的安裝

 

05-在容器中,查看Alpine容器的IP地址

 

06-在Docker虛擬主機中使用docker build生成Docker鏡像的過程

 

07-生成Docker鏡像的大小,只有36.5MB

 

08-網絡相關配置文件及內容

 

09-重啓網絡服務 networking restart

 

10-軟件倉庫源的文件內容

 

11-apk軟件包管理經常使用命令-updae-search-add-del

 

12-使用curl查看Nginx網站的頁面反饋-查看TCP網絡狀態

 

13-使用drill查詢blog.csdn.net網站域名信息1

 

13-使用drill查詢blog.csdn.net網站域名信息2

 

14-修改ssh配置文件,運行Root用戶使用ssh登陸

 

15-使用Xshell客戶端工具,ssh登陸到3.166的Alpine機器上

 

16-更新APK軟件包倉庫的索引文件

 

17-安裝Nginx

 

18-重啓Nginx服務-將Nginx設置爲開機自動啓動

 

 

 

【注意事項】:由於Alpine採用的是musl libc,不是一般用的glibc,在使用DNS時,Alpine(musl libc)在DNS解析文件/etc/resolv.conf中,不使用domain或 search選項。在使用DNS做爲服務發現時,要查看相應的文檔來解決。相關連接:http://gliderlabs.viewdocs.io/docker-alpine/caveats/

 

【心得體會】:

http://wiki.alpinelinux.org 網站上內容很是豐富,英文也很是簡單,幾乎全部的問題都能在該網站上找到答案,強烈推薦該網站。

 

【參考連接】:

Alpine Linux package management

http://wiki.alpinelinux.org/wiki/Alpine_Linux_package_management

 

Alpine Linux,一個只有5M的Docker鏡像

http://www.infoq.com/cn/news/2016/01/Alpine-Linux-5M-Docker

 

Alpine Linux 源使用幫助

http://mirrors.ustc.edu.cn/help/alpine.html

 

Alpine Linux配置使用技巧【一個只有5M的操做系統(轉)】

http://www.cnblogs.com/zhangmingcheng/p/7122386.html

 

docker(10):virtualbox安裝使用 alpinelinux   

http://blog.csdn.net/freewebsys/article/details/53638227

相關文章
相關標籤/搜索