この記事の対象者
- 高校生から大学1年生くらいの人。
- Dockerを初めて使ってみる人。
- Linux (Ubuntu)を試してみたい人。
- Windowsを利用しているがWSLが利用できない環境にある人。(MacOSはUNIX系OSです)
投稿者にとっては備忘録です。
前回の記事は下記の通り。
Ubuntuコンテナをバックグラウンドで起動する
バックグラウンドで起動
Ubuntuのコンテナにmy-ubuntu
という名前を付けて、Ubuntuコンテナをバックグラウンドで起動する。
(前回のUbuntuの利用法では、Ubuntuからログアウトすると、コンテナが停止し、Ubuntuで設定した内容はすべて再利用できなくなってしまっていた。)
$ docker run -dit --name my-ubuntu ubuntu
- -d: コンテナをバックグラウンドで実行。
- -i: 標準入力を開いたままにする(インタラクティブな操作を可能にする)。
- -t: 疑似TTYを割り当てる(ターミナルでの操作を可能にする)。
- --name my-ubuntu: コンテナにmy-ubuntuという名前を付ける。
- ubuntu: 使用するDockerイメージを指定する(ここではUbuntuを使用)。
$ docker run -dit --name my-ubuntu ubuntu
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
5a7813e071bf: Pull complete
Digest: sha256:hoge
Status: Downloaded newer image for ubuntu:latest
hoge
[node1] (local) root@192.168.0.23 ~
$
Ubuntuコンテナにbashでログイン
前回同様、rootとしてログインしている。IDにパスワードは設定されていない。
$ docker exec -it my-ubuntu bash
$ docker exec -it my-ubuntu bash
root@c9dd8b301986:/#
Ubuntuを使ってみる
apt updateする
# apt update
root@d2ce1c07db42:/# apt update
Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB]
Get:2 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
(以下省略)
adduser
adduser
とは、ユーザーを追加する機能である。一般ユーザーを追加することにする。
# apt install -y adduser
root@d2ce1c07db42:/# apt install -y adduser
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
一般ユーザーを追加
ここでは、myuserという名前の一般ユーザーを追加している
# adduser myuser
root@d2ce1c07db42:/# adduser myuser
info: Adding user `myuser' ...
info: Selecting UID/GID from range 1000 to 59999 ...
info: Adding new group `myuser' (1001) ...
info: Adding new user `myuser' (1001) with group `myuser (1001)' ...
info: Creating home directory `/home/myuser' ...
info: Copying files from `/etc/skel' ...
New password:
Retype new password:
passwd: password updated successfully
Changing the user information for myuser
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
info: Adding new user `myuser' to supplemental / extra groups `users' ...
info: Adding user `myuser' to group `users' ...
root@d2ce1c07db42:/#
一般ユーザに管理者権限の付与
もし一般ユーザーにも管理者権限を与えたい場合は、sudo を追加
# apt install sudo
root@d2ce1c07db42:/# apt install sudo
Reading package lists... Done
(中略)
After this operation, 3665 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libapparmor1 amd64 4.0.1really4.0.1-0ubuntu0.24.04.3 [50.3 kB]
Get:2 http://archive.ubuntu.com/ubuntu noble/main amd64 sudo amd64 1.9.15p5-3ubuntu5 [948 kB]
(以下省略)
root@d2ce1c07db42:/#
myuserに管理者権限を付与する。
# usermod -aG sudo myuser
root@d2ce1c07db42:/# usermod -aG sudo myuser
root@d2ce1c07db42:/#
一般ユーザー(ユーザー名myuser)になる
# su - myuser
root@d2ce1c07db42:/# su - myuser
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
myuser@d2ce1c07db42:~$
名前の確認
$ whoami
myuser@d2ce1c07db42:~$ whoami
myuser
ディレクトリの確認など
$ pwd
現在いるディレクトリの確認
myuser@d2ce1c07db42:~$ pwd
/home/myuser
myuser@d2ce1c07db42:~$
$ ls
ファイル名の取得
myuser@d2ce1c07db42:~$ ls
myuser@d2ce1c07db42:~$
$ ls -la
隠しファイルも表示する。詳細を表示する。
myuser@d2ce1c07db42:~$ ls -la
total 16
drwxr-x--- 2 myuser myuser 78 Mar 21 08:59 .
drwxr-xr-x 1 root root 35 Mar 21 08:54 ..
-rw------- 1 myuser myuser 13 Mar 21 08:59 .bash_history
-rw-r--r-- 1 myuser myuser 220 Mar 21 08:53 .bash_logout
-rw-r--r-- 1 myuser myuser 3771 Mar 21 08:53 .bashrc
-rw-r--r-- 1 myuser myuser 807 Mar 21 08:53 .profile
myuser@d2ce1c07db42:~$
テキストファイルを作ってみる
現在いるディレクトリにtest.txtというファイルを作って、そこに「私の名前は山田太郎です」と書き込み、内容を確認する。(勉強のためには、viエディタなどが使用できるようになるといい。)
myuser@c9dd8b301986:~$ touch test.txt
myuser@c9dd8b301986:~$
myuser@c9dd8b301986:~$ echo "私の名前は山田太郎です" > test.txt
myuser@c9dd8b301986:~$
myuser@c9dd8b301986:~$ cat test.txt
私の名前は山田太郎です
myuser@c9dd8b301986:~$
Linuxの勉強をしたい人向け
リンク先には無料のテキストが掲載されている。