日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

docker镜像制作(二)——构建企业镜像LAMP+BBS

發布時間:2024/2/28 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker镜像制作(二)——构建企业镜像LAMP+BBS 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

docker鏡像制作(二)——構建企業鏡像LAMP+BBS

  • 一、LAMP概述
  • 二、進行搭建
    • 1、啟動基礎鏡像容器
    • 2、容器中優化yum源,并安裝軟件
    • 3、軟件初始化
      • ①、ssh的開啟
      • ②、mysql的安裝和開啟
      • ③、apache初始化
    • 4、宿主機編輯PHP主頁文件并測試
    • 5、安裝論壇bbs
    • 6、對LAMP+BBS的整體構架進行封裝鏡像處理

一、LAMP概述

  • LAMP架構是目前成熟的企業網站應用模式之一,指的是協同工作的一整套系統和相關軟件,能夠提供靜態和動態Web站點服務以及其應用開發環境。
  • LAMP是一個縮寫詞,具體包括Linux操作系統、Apache網站服務器、MySQL數據庫服務器、PHP(或Perl、Python)網頁編程語言。
  • 相關組件的主要作用:
    • (平臺)Linux:作為LAMP架構的基礎,提供用于支撐Web站點的操作系統,能夠與其他三個組件提供更好的穩定性,兼容性(AMP組件也支持Windows、UNIX等平臺) 。
    • (前臺)Apache:作為LAMP架構的前端,是一款功能強大,穩定性好的Web服務器程序,該服務器直接面向用戶提供網站訪問,發送網頁,圖片等文件內容。
    • (后臺)MySQL:作為LAMP架構的后端,是一款流行的開源關系數據庫系統。在企業網站、業務系統等應用中,各種賬戶信息、產品信息,客戶資料、業務數據等都可以存儲到MySQL數據庫,其他程序可以通過SQL語句來查詢,更改這些信息。
    • (中間連接)PHP/Perl/Python:作為三種開發動態網頁的編程語言,負責解釋動態網頁文件,負責溝通Web服務器和數據庫系統以協同工作,并提供Web應用程序的開發和運行環境。其中PHP是一種被廣泛應用的開放源代碼的多用途腳本語言,它可以嵌入到HTML中,尤其適合于Web應用開發。

二、進行搭建

1、啟動基礎鏡像容器

掛載本地局域網yum源(數據卷) mount -o loop /mnt/CentOS-7-x86_64-DVD-1708.iso /var/ftp/centos7.4開啟一個centos7.4容器 mkdir -p /opt/vol/mysql /opt/vol/html docker run -itd --name="lamp_bbs" --privileged=true -v /opt/vol/mysql:/var/lib/mysql -v /opt/vol/html:/var/www/html -p 8888:80 -p 2222:22 -p 33060:3306 9f266d35e02c /usr/sbin/init docker exec -it lamp_bbs /bin/bash

2、容器中優化yum源,并安裝軟件

cd /etc/yum.repos.d mkdir repo.bak mv *.repo repo.bak cat > /etc/yum.repos.d/ftp_7.repo <<EOF [ftp] name=ftpbase baseurl=ftp://172.17.0.1/centos7.4 enabled=1 gpgcheck=0 EOFyum makecache fast && yum -y install net-tools openssl openssh-server httpd mysql mariadb php php-mysql

3、軟件初始化

①、ssh的開啟

ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N '' ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N '' vi /etc/ssh/sshd_config (17行和38行取消注釋)passwd #修改登錄密碼,才能遠程ssh連接 /usr/sbin/sshd -D & #后臺啟動服務



②、mysql的安裝和開啟

宿主機上傳mysql壓縮包到容器(mysql-5.7.17.tar.gz、boost_1_59_0.tar.gz) docker cp 本地mysql文件路徑 ID全稱:容器路徑安裝環境依賴包 yum -y install gcc gcc-c++ ncurses ncurses-devel bison cmaketar zxvf mysql-5.7.17.tar.gz tar zxvf boost_1_59_0.tar.gzcd /opt mv boost_1_59_0 /var/lib/boost配置軟件模塊 cd /opt/mysql-5.7.17/ cmake \ -DCMAKE_INSTALL_PREFIX=/var/lib/mysql \ -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \ -DSYSCONFDIR=/etc \ -DSYSTEMD_PID_DIR=/var/lib/mysql \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=all \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DMYSQL_DATADIR=/var/lib/mysql/data \ -DWITH_BOOST=/var/lib/boost \ -DWITH_SYSTEMD=1編譯及安裝 make -j2 && make install建mysql用戶 useradd -M -s /sbin/nologin mysql修改mysql 配置文件 vim /etc/my.cnf #刪除原配置項,再重新添加下面內容 [client] port = 3306 default-character-set=utf8 socket=/var/lib/mysql/mysql.sock[mysql] port = 3306 default-character-set=utf8 socket = /var/lib/mysql/mysql.sock auto-rehash[mysqld] user = mysql basedir=/var/lib/mysql datadir=/var/lib/mysql/data port = 3306 character-set-server=utf8 pid-file = /var/lib/mysql/mysqld.pid socket=/var/lib/mysql/mysql.sock bind-address = 0.0.0.0 skip-name-resolve max_connections=2048 default-storage-engine=INNODB max_allowed_packet=16M server-id = 1sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES更改mysql安裝目錄和配置文件的屬主屬組 chown -R mysql:mysql /var/lib/mysql/ chown mysql:mysql /etc/my.cnf設置路徑環境變量 echo 'export PATH=/var/lib/mysql/bin:/var/lib/mysql/lib:$PATH' >> /etc/profile source /etc/profile初始化數據庫 cd /var/lib/mysql/bin/ ./mysqld \ --initialize-insecure \ --user=mysql \ --basedir=/var/lib/mysql \ --datadir=/var/lib/mysql/data添加mysqld系統服務 cp /var/lib/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/systemctl daemon-reload systemctl start mysqld.service systemctl enable mysqld netstat -anpt | grep 3306 修改mysql 的登錄密碼 mysqladmin -u root -p password "010230" 授權遠程登錄 mysql -u root -p010230 grant all privileges on *.* to 'root'@'%' identified by '010230'; grant all privileges on *.* to discuz@'%' identified by '010230'; create database discuz;







③、apache初始化

systemctl start httpd systemctl enable httpd

4、宿主機編輯PHP主頁文件并測試

vim /opt/vol/html/index.php <?php phpinfo(); ?>用另一臺虛擬機訪問頁面192.168.184.70:8888進行測試


5、安裝論壇bbs

宿主機移動論壇壓縮包移動到掛載目錄/var/www/html(Discuz_X3.4_SC_UTF8.zip) mv /opt/Discuz_X3.4_SC_UTF8.zip /opt/vol/html/ 宿主機進行解壓 unzip /opt/vol/html/Discuz_X3.4_SC_UTF8.zip 容器中進行: cd /var/www/html/dir_SC_UTF8/上傳站點更新包 cp -r /var/www/html/dir_SC_UTF8/upload/ /var/www/html/bbs cd /var/www/html/bbsps aux #查看發現論壇進程的用戶名是apache chown -R apache ./config chown -R apache ./data chown -R apache ./uc_client chown -R apache ./uc_server/data論壇頁面訪問 http://192.168.80.70:8888/bbs數據庫服務器:172.17.0.2 ###本地架設就用localhost,如何不是在在本機上就要填寫IP地址和端口號 數據庫名字:discuz 數據庫用戶名:discuz 數據庫密碼:010230 管理員賬號:admin 管理員密碼:010230





6、對LAMP+BBS的整體構架進行封裝鏡像處理

docker commit 8971ad096382 ljm/centos7_lamp_bbs

總結

以上是生活随笔為你收集整理的docker镜像制作(二)——构建企业镜像LAMP+BBS的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。