第2次實踐作業

2022-05-11 09:45:16 字數 3441 閱讀 3067

sudo docker cp 《容器id>:/etc/nginx/conf.d/default.conf .

在主目錄下可以看見配置檔案

用vim修改配置檔案,以及編寫dockerfile

出現success則為build成功

sudo docker run -p 8000:1106 -d mynginx:test

開啟瀏覽器訪問localhost:8000

開啟瀏覽器,出現之前編寫的html內容

mkdir ~/mysql

cd ~/mysql

from mysql:5.7

設定免密登入

env mysql_allow_empty_password yes

將所需檔案放到容器中

copy setup.sh /mysql/setup.sh

copy schema.sql /mysql/schema.sql

copy privileges.sql /mysql/privileges.sql

設定容器啟動時執行的命令

cmd ["sh", "/mysql/setup.sh"]

set -e

檢視mysql服務的狀態,方便除錯,這條語句可以刪除

echoservice mysql status

echo '1.啟動mysql....'

啟動mysql

service mysql start

sleep 3

echoservice mysql status

echo '2.開始匯入資料....'

匯入資料

mysql < /mysql/schema.sql

echo '3.匯入資料完畢....'

sleep 3

echoservice mysql status

重新設定mysql密碼

echo '4.開始修改密碼....'

mysql < /mysql/privileges.sql

echo '5.修改密碼完畢....'

sleep 3

echoservice mysql status

echo 'mysql容器啟動完畢,且資料匯入成功'

tail -f /dev/null

建立資料庫

create databasedocker_mysqldefault character set utf8 collate utf8_general_ci;

use docker_mysql;

-- 建表

drop table if exists test;

create table test (

idbigint(20) not null,

namevarchar(255) default ""

) engine=innodb default charset=latin1;

-- 插入資料

insert into test (id,name)

values

(1106,'zyj');

use mysql;

select host, user from user;

-- 新建使用者為如下命令:

create user docker identified by '123456';

-- 將docker_mysql資料庫的許可權授權給建立的docker使用者,密碼為123456:

sudo docker exec -it 《容器id> /bin/bash

這次過程中有個指令使用錯誤導致一直無法訪問到localhost:8000,sudo docker run -p 8000:1106 -d mynginx:test

指令-d 用成了指令 -t所以無法訪問到。

第2次實踐作業

上一次作業同學們實現了docker環境的安裝和基本配置,已經能夠從docker的官方映象倉庫中拉取映象,初步實現了入門。然而,從官方倉庫拉取的映象是最簡單的映象,在實際應用中經常需要根據需求額外修改映象,這就涉及到了映象的定製。在docker中我們可以使用dockerfile檔案實現自定義映象,本次...

第2次實踐作業

選擇nginx,標明映象作者資訊,安裝必要的工具以方便維護 設定自己的web存放目錄,安全起見,將預設的監聽埠80更改為自定義的埠,並且宣告暴露的埠,容器啟動時,能直接進入web 的存放目錄。from nginx maintainer作者字段 label maintainer shenkay ngi...

第2次實踐作業

sudo docker pull nginx檢視本地映象 sudo docker images sudo docker run it nginx bin bash檢視容器工作目錄 複製執行中nginx容器的配置檔案,為後續修改監聽埠備用 sudo docker cp 容器id etc nginx c...