Docker容器安裝軟件(完整版)

文章目錄

  • 一、安裝Docker
    • 1.1 docker 相關的命令
    • 1.2 配置鏡像加速
  • 二. 安裝es
    • 2.1 創建網絡
    • 2.2 拉取鏡像
    • 2.3 創建掛載點目錄
    • 2.4 部署單點es,創建es容器
    • 2.5 編寫elasticsearch.yml
    • 2.6 重啟es容器
    • 2.7 測試Elasticsearch是否安裝成功
  • 三. 基于Docker安裝Kibana
    • 3.1 拉取鏡像
    • 3.2 啟動容器
  • 四. 安裝IK分詞器
    • 4.1,下載插件
    • 4.2 解壓
    • 4.3 上傳到es容器的插件數據卷中
    • 4.4 重啟容器
    • 4.5 查看日志
  • 五. 安裝RabbitMQ
  • 六. 安裝MySQL
    • 6.1 拉取鏡像
    • 6.2 在 /usr 下創建 mysql/data 和 mysql/conf 兩個目錄
    • 6.3 運行mysql容器
    • 6.4使用Navicat 鏈接數據庫
  • 七. 安裝Nacos
    • 1, 拉取nacos鏡像
    • 2、創建宿主機掛載目錄
    • 3、啟動nacos 并復制文件到宿主機,關閉容器
    • 4、mysql中創建nacos所需的表
    • 5、再次啟動nacos
  • 八. 安裝Nginx
    • 掛載
  • 九. 安裝Redis
    • 1,拉取redis鏡像
    • 2,下載配置文件
    • 3,創建Docker容器
    • 檢查日志
    • 4,測試 Redis
    • 5,開放防火墻端口
  • 十. 安裝oracle19c
    • 1, 拉取鏡像
    • 2, 創建目錄并賦權
    • 3, 構建容器并啟動
    • 4,查看日志
    • 5,開放相關端口
    • 6,登錄docker容器里面
    • 7,登錄sqlplus 創建PDB用戶
    • 8,查看show pdbs
    • 9,切換數據庫
    • 10,創建用戶
    • 11,授權
    • 12,使用navicat連接


一、安裝Docker

# 1.卸載舊的版本
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine# 如有需要,可以安裝gcc
yum -y install gcc# 以及gcc-c++
yum -y install gcc-c++# 2.需要的安裝包
sudo yum install -y yum-utils# 3.設置鏡像倉庫
sudo yum-config-manager \--add-repo \# 默認是國外的,不要使用https://download.docker.com/linux/centos/docker-ce.repo# 建議使用阿里云的鏡像,十分快sudo yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 更新yum軟件包索引(安裝前的工作,非必須)
yum makecache fast
# yum makecache: error: argument timer: invalid choice: 'fast' (choose from 'timer')
# 安裝報錯了,yum makecache fast是centOS7的命令, 不使用8,可以直接使用
yum makecache # 或者
dnf makecache# 4.安裝docker docker-ce:社區版的,docker-ee:企業版的
sudo yum install docker-ce docker-ce-cli containerd.io

1.1 docker 相關的命令

systemctl start docker # 啟動docker
systemctl stop docker # 停止docker 
systemctl restart docker # 重啟docker
systemctl status docker	# 查看docker啟動狀態

鏡像相關的命令
容器相關的命令
掛載
怎么進入容器

1.2 配置鏡像加速

docker官方鏡像倉庫網速較差,我們需要設置國內鏡像服務:
參考阿里云的鏡像加速文檔:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

1. 安裝/升級Docker客戶端
推薦安裝1.10.0以上版本的Docker客戶端,參考文檔docker-ce2. 配置鏡像加速器
針對Docker客戶端版本大于 1.10.0 的用戶您可以通過修改daemon配置文件/etc/docker/daemon.json來使用加速器sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://wm7fopru.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

這是我的執行

二. 安裝es

2.1 創建網絡

因為需要部署kibana容器,因此需要讓es和kibana容器互聯。
指令:

docker network create es-net
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker network create es-net
1a260b1b77a06b9d392b3c40e72b09656fb75513bd54840e270b9e9d0a25aa90

2.2 拉取鏡像

以安裝Elasticsearch 8.6.0 版本為例

docker pull elasticsearch:8.6.0

2.3 創建掛載點目錄

mkdir -p /usr/local/es/data /usr/local/es/config /usr/local/es/plugins
chmod 777  /usr/local/es/data
chmod 777  /usr/local/es/config
chmod 777  /usr/local/es/plugins

2.4 部署單點es,創建es容器

docker run -d \
--restart=always \
--name es \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
--privileged \
-v /usr/local/es/data:/usr/share/elasticsearch/data \
-v /usr/local/es/plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
elasticsearch:8.6.0

添加了配置文件夾的掛載

docker run -d \
--name es \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
--privileged \
-v es-data:/usr/share/elasticsearch/data \
-v es-config://usr/share/elasticsearch/config \
-v es-plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
elasticsearch:8.6.0

2.5 編寫elasticsearch.yml

先進入es容器

docker exec -it es /bin/bash
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker exec -it es /bin/bash
elasticsearch@99253913db78:~$ 

跳轉到config目錄下

cd config

關閉 密碼安全驗證

echo 'xpack.security.enabled: false' >> elasticsearch.yml
elasticsearch@99253913db78:~$ cd config
elasticsearch@99253913db78:~/config$ echo 'xpack.security.enabled: false' >> elasticsearch.yml

2.6 重啟es容器

docker restart es

2.7 測試Elasticsearch是否安裝成功

訪問虛擬機地址+端口號,前面配置Elasticsearch 的端口號為:9200
例如:http://47.120.37.156:9200/
在這里插入圖片描述

三. 基于Docker安裝Kibana

3.1 拉取鏡像

以安裝kibana 8.6.0 版本為例

指令:

docker pull kibana:8.6.0
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY      TAG       IMAGE ID       CREATED         SIZE
kibana          8.6.0     e903232de67c   16 months ago   718MB
elasticsearch   8.6.0     6053d49e4509   16 months ago   1.29GB
mkdir -p /usr/local/kibana/config /usr/local/kibana/data

3.2 啟動容器

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network=es-net \
-p 5601:5601  \
kibana:8.6.0

四. 安裝IK分詞器

離線安裝:

4.1,下載插件

下載地址https://github.com/infinilabs/analysis-ik/releases

在這里插入圖片描述

4.2 解壓

將我們剛剛下載的壓縮包解壓后改名為ik
在這里插入圖片描述

4.3 上傳到es容器的插件數據卷中

也就是 /usr/local/es/plugins

在這里插入圖片描述

4.4 重啟容器

docker restart es

4.5 查看日志

docker logs es

注意: 有時候啟動容器可能沒有那么快,最好通過日志查看啟動的容器是否報錯或者完全啟動
在這里插入圖片描述

五. 安裝RabbitMQ

RabbitMQ安裝沒有那么繁瑣一條命令即可

docker run \-e RABBITMQ_DEFAULT_USER=admin \-e RABBITMQ_DEFAULT_PASS=123456 \-v mq-plugins:/plugins \--name mq \--restart=always \--hostname mq1 \-p 15672:15672 \-p 5672:5672 \-d \rabbitmq:3.8-management

六. 安裝MySQL

6.1 拉取鏡像

docker pull mysql

6.2 在 /usr 下創建 mysql/data 和 mysql/conf 兩個目錄

[root@iZf8z89pv77t13an9qqmcrZ ~]# mkdir -p /usr/mysql/conf
[root@iZf8z89pv77t13an9qqmcrZ ~]# mkdir -p /usr/mysql/data
[root@iZf8z89pv77t13an9qqmcrZ ~]# cd /usr/mysql
[root@iZf8z89pv77t13an9qqmcrZ mysql]# ls
conf  data

6.3 運行mysql容器

docker run --name mysql -e MYSQL_ROOT_PASSWORD=1234 -d -p 3306:3306 -v /usr/mysql/conf:/etc/mysql/conf.d -v /usr/mysql/data:/var/lib/mysql mysql:latest

6.4使用Navicat 鏈接數據庫

在這里插入圖片描述

連接成功
在這里插入圖片描述

七. 安裝Nacos

1, 拉取nacos鏡像

docker pull nacos/nacos-server
docker pull nacos/nacos-server:v2.3.0	指定版本

下載時間比較久,需要一段時間

[root@iZf8z89pv77t13an9qqmcrZ mysql]# docker pull nacos/nacos-server
Using default tag: latest
latest: Pulling from nacos/nacos-server
5ad559c5ae16: Pull complete 
5746ca7cf180: Pull complete 
d709fe221c89: Pull complete 
e88fdcf257b1: Pull complete 
eb573b28173c: Pull complete 
a71625257ced: Pull complete 
26e7e7836838: Pull complete 
30f7d6851c4a: Pull complete 
d565cd94c625: Pull complete 
Digest: sha256:87a3d8b78ec24c253a4db7c093097a7b256327eb5117cd9498e289b896918153
Status: Downloaded newer image for nacos/nacos-server:latest
docker.io/nacos/nacos-server:latest
[root@iZf8z89pv77t13an9qqmcrZ mysql]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB

2、創建宿主機掛載目錄

[root@iZf8z89pv77t13an9qqmcrZ mysql]# mkdir -p /usr/nacos/logs
[root@iZf8z89pv77t13an9qqmcrZ mysql]# mkdir -p /usr/nacos/conf
[root@iZf8z89pv77t13an9qqmcrZ mysql]# mkdir -p /usr/nacos/data
[root@iZf8z89pv77t13an9qqmcrZ mysql]# cd /usr/nacos
[root@iZf8z89pv77t13an9qqmcrZ nacos]# ls
conf  logs

mkdir -p /usr/nacos/logs /usr/nacos/conf /usr/nacos/data

3、啟動nacos 并復制文件到宿主機,關閉容器

  • 啟動nacos
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker run -p 8848:8848 --name nacos -d nacos/nacos-server
1b748a216d14f8dd284d73c75228213b57f2ff5d6c591f8c2dd4ca17e014b3d8

docker run -p 8848:8848 --name nacos -d nacos/nacos-server

  • 復制文件
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker cp nacos:/home/nacos/logs /usr/nacosSuccessfully copied 184kB to /usr/nacos
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker cp nacos:/home/nacos/conf /usr/nacosSuccessfully copied 49.2kB to /usr/nacos

docker cp nacos:/home/nacos/conf/ /usr/nacos/
docker cp nacos:/home/nacos/logs/ /usr/nacos/
docker cp nacos:/home/nacos/data/ /usr/nacos/

  • 關閉容器(容器id也可以)
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker rm -f nacos
nacos

4、mysql中創建nacos所需的表

mysql中新建一個庫,名字可自定義,這里就用nacos,從github中找到創建表的文件,在nacos-config庫中執行,創建所需的表https://myblogoss2.oss-cn-beijing.aliyuncs.com/dump-nacos-202403131030.sql

在這里插入圖片描述

5、再次啟動nacos

docker run -d --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /usr/nacos/logs/:/home/nacos/logs -v /usr/nacos/conf/:/home/nacos/conf/ -v /usr/nacos/data/:/home/nacos/data/ --restart=always nacos/nacos-server:v2.3.0

docker run -d -e MODE=standalone -e PREFER_HOST_MODE=hostname -e SPRING_DATASOURCE_PLATFORM=mysql -e MYSQL_SERVICE_HOST=127.0.0.1 -e MYSQL_SERVICE_PORT=3306 -e MYSQL_SERVICE_USER=root -e MYSQL_SERVICE_PASSWORD=1234 -e MYSQL_SERVICE_DB_NAME=nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 --name nacos --restart=always nacos/nacos-server

[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker run -d --name nacos -p 8848:8848  -p 9848:9848 -p 9849:9849 --privileged=true -e JVM_XMS=256m -e JVM_XMX=256m -e MODE=standalone -v /usr/nacos/logs/:/home/nacos/logs -v /usr/nacos/conf/:/home/nacos/conf/ --restart=always nacos/nacos-server
b70e5dd54e4ee8dbf72bff2006cd4add7d6302cc1f736d1dfbc06f41fa99b101
[root@iZf8z89pv77t13an9qqmcrZ nacos]# docker ps
CONTAINER ID   IMAGE                COMMAND                   CREATED          STATUS          PORTS                                                                                                      NAMES
b70e5dd54e4e   nacos/nacos-server   "bin/docker-startup.…"   3 seconds ago    Up 2 seconds    0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848-9849->9848-9849/tcp, :::9848-9849->9848-9849/tcp   nacos
2fae66209fb4   mysql:latest         "docker-entrypoint.s…"   37 minutes ago   Up 37 minutes   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp                                                       mysql
docker run -d \
--name nacos \
-p 8848:8848  -p 9848:9848 -p 9849:9849 \
--privileged=true \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-v nacos-logs:/usr/nacos/logs \
-v nacos-conf:/home/nacos/conf \
-v nacos-data:/home/nacos/data \
--restart=always nacos/nacos-server:v2.3.0

注意事項
虛擬機需要在防火墻開放相關端口,或者關了防火墻,如果你是云服務器,開放安全組

輸入地址:http://ip:8848/nacos/index.html

如果報錯誤:
https://blog.csdn.net/qq_17369545/article/details/135022129

八. 安裝Nginx

1.拉取鏡像

docker pull nginx

2.查看鏡像

[root@iZf8z89pv77t13an9qqmcrZ ~]# systemctl start docker
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
1panel/maxkb         latest    c023f10d7cab   2 weeks ago   2.66GB
nginx                latest    605c77e624dd   2 years ago   141MB
redis                latest    7614ae9453d1   2 years ago   113MB
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB

3.運行鏡像

[root@iZwz96byk26u1sns4xp7giZ ~]# docker run --name mn -d -p 80:80 nginx
49c02ef7c18facc452762fa7e722720235290df28fce39b6aebb8b024ae21d70

4.檢測
在這里插入圖片描述

掛載

簡單啟動nginx

docker run --name mn -d -p 80:80 nginx

創建配置文件夾

mkdir -p /opt/nginx

復制文件

docker cp mn:/usr/share/nginx/html /opt/nginx/
docker cp mn:/etc/nginx/nginx.conf /opt/nginx/
docker cp mn:/etc/nginx/conf.d /opt/nginx/

刪除原有的Nginx容器

docker rm -f mn

創建容器

docker run --name nginx -d \
-p 80:80 -p 81:81 \
-v /opt/nginx/html:/usr/share/nginx/html \
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
-v /opt/nginx/conf.d:/etc/nginx/conf.d \
nginx

修改配置
在這里插入圖片描述

將端口改成81
在這里插入圖片描述

九. 安裝Redis

1,拉取redis鏡像

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker pull redis

查看鏡像

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker images
REPOSITORY           TAG       IMAGE ID       CREATED       SIZE
nginx                latest    605c77e624dd   2 years ago   141MB
redis                latest    7614ae9453d1   2 years ago   113MB
mysql                latest    3218b38490ce   2 years ago   516MB
nacos/nacos-server   latest    bdf60dc2ada3   2 years ago   1.05GB

2,下載配置文件

https://redis.io/docs/latest/operate/oss_and_stack/management/config/

在這里插入圖片描述

如果之前用linux下載方式安裝了reids 也可以直接復制redis.conf配置文件
在這里插入圖片描述

3,創建Docker容器

接下來就是要將redis 的配置文件進行掛載,以配置文件方式啟動redis 容器。(掛載:即將宿主的文件和容器內部目錄相關聯,相互綁定,在宿主機內修改文件的話也隨之修改容器內部文件)
1)、掛載 redis 的配置文件
2)、掛載 redis 的持久化文件(為了數據的持久化)。
本人的配置文件是放在
liunx 下redis.conf文件位置:/usr/redis/myredis/redis.conf
liunx 下redis的data文件位置 : /usr/redis/myredis/data
在這里插入圖片描述
創建容器
docker run -p 6379:6379 --name redis -v /usr/redis/myreids/redis.conf:/etc/redis/redis.conf -v /usr/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker run -p 6379:6379 --name redis -v /usr/redis/myreids/redis.conf:/etc/redis/redis.conf  -v /usr/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
3caef72f5f45b7ca6175b99ad5081a3e48a327560cd2be078e1be484105068f4
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker ps
CONTAINER ID   IMAGE                COMMAND                   CREATED         STATUS         PORTS                                                                                                      NAMES
3caef72f5f45   redis                "docker-entrypoint.s…"   5 seconds ago   Up 4 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp                                                                  redis
b70e5dd54e4e   nacos/nacos-server   "bin/docker-startup.…"   8 days ago      Up 8 days      0.0.0.0:8848->8848/tcp, :::8848->8848/tcp, 0.0.0.0:9848-9849->9848-9849/tcp, :::9848-9849->9848-9849/tcp   nacos
2fae66209fb4   mysql:latest         "docker-entrypoint.s…"   9 days ago      Up 9 days      0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp   

檢查日志

[root@iZf8z89pv77t13an9qqmcrZ ~]# docker logs redis
1:C 24 Apr 2024 11:12:30.551 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1:C 24 Apr 2024 11:12:30.551 # Redis version=6.2.6, bits=64, commit=00000000, modified=0, pid=1, just started
1:C 24 Apr 2024 11:12:30.551 # Configuration loaded
1:M 24 Apr 2024 11:12:30.551 * monotonic clock: POSIX clock_gettime
1:M 24 Apr 2024 11:12:30.552 * Running mode=standalone, port=6379.
1:M 24 Apr 2024 11:12:30.552 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
1:M 24 Apr 2024 11:12:30.552 # Server initialized
1:M 24 Apr 2024 11:12:30.552 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
1:M 24 Apr 2024 11:12:30.552 * Ready to accept connections

創建成功

4,測試 Redis

  1. 輸入指令:docker exec -it redis bash,進入容器內。
  2. 輸入指令:redis-cli,運行 redis 客戶端。
  3. 輸入指令:ping,顯示 PONG 代表測試成功!
[root@iZf8z89pv77t13an9qqmcrZ ~]# docker exec -it redis bash
root@3caef72f5f45:/data# redis-c
redis-check-aof  redis-check-rdb  redis-cli        
root@3caef72f5f45:/data# redis-cli 
127.0.0.1:6379> ping
PONG

連接成功

5,開放防火墻端口

輸入指令:firewall-cmd --zone=public --add-port=6379/tcp --permanent,開放防火墻指定端口。
輸入指令:firewall-cmd --reload,重新加載防火墻。
firewall-cmd --zone=public --add-port=5672/tcp --permanent   # 開放5672端口firewall-cmd --zone=public --remove-port=5672/tcp --permanent  #關閉5672端口firewall-cmd --reload   # 配置立即生效firewall-cmd --zone=public --list-ports # 查看開放的端口列表

十. 安裝oracle19c

1, 拉取鏡像

docker pull registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c

或者導入鏡像

docker -i 

2, 創建目錄并賦權

mkdir -p /opt/oracle/oradata
chmod 777  /opt/oracle/oradata

3, 構建容器并啟動

docker run -d -p 1521:1521 \-p 5502:5500  \-e ORACLE_SID=ORCLCDB  \-e ORACLE_PDB=ORCLPDB  \-e ORACLE_PWD=oracle  \-e ORACLE_EDITION=standard \-e ORACLE_CHARACTERSET=AL32UTF8  \-v /opt/oracle/oradata/:/opt/oracle/oradata/ --name  oracle_19c \registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c
  1. docker run: 運行 Docker 容器的命令。
  2. -d: 指定容器在后臺運行(detached mode)。
  3. -p 1521:1521: 將容器的 1521 端口映射到主機的 1521 端口,Oracle 數據庫監聽端口。
  4. -p 5502:5500: 將容器的 5500 端口映射到主機的 5502 端口,用于 Oracle Enterprise Manager Express 訪問的端口。
  5. -e ORACLE_SID=ORCLCDB: 設置 Oracle 實例的 SID(System Identifier),這里設置為 ORCLCDB。
  6. -e ORACLE_PDB=ORCLPDB: 設置 Oracle 的 Pluggable Database(PDB)的名稱,這里設置為 ORCLPDB。
  7. -e ORACLE_PWD=oracle: 設置 Oracle 系統用戶 SYS 和 SYSTEM 的初始密碼為 oracle。
  8. -e ORACLE_EDITION=standard: 設置 Oracle 的版本為標準版(standard),這影響 Oracle 的功能集。
  9. -e ORACLE_CHARACTERSET=AL32UTF8: 設置 Oracle 數據庫的字符集為 AL32UTF8,即 Unicode 字符集。
  10. -v /docker/oracle19c/oradata/:/opt/oracle/oradata/: 將主機上的 /docker/oracle19c/oradata/ 目錄掛載到容器內的 /opt/oracle/oradata/ 目錄,用于持久化存儲數據庫文件。
  11. –name oracle_19c: 指定容器的名稱為 oracle_19c。
  12. registry.cn-hangzhou.aliyuncs.com/zhuyijun/oracle:19c: 指定要運行的 Docker 鏡像,這里是從阿里云的鏡像倉庫中拉取并運行名為 oracle:19c 的鏡像。

4,查看日志

docker logs -ft oracle_19c

在這里插入圖片描述

5,開放相關端口

firewall-cmd --zone=public --add-port=1521/tcp --permanent
firewall-cmd --zone=public --add-port= 5502/tcp --permanent
firewall-cmd --reload #重新加載防火墻。

6,登錄docker容器里面

docker exec -it oracle_19c /bin/bash

7,登錄sqlplus 創建PDB用戶

sqlplus / as sysdba

Oracle 數據庫中,sqlplus / as sysdba 是一種連接到數據庫的方式,其中:
sqlplus 是 Oracle 提供的交互式 SQL 工具,用于與 Oracle 數據庫進行交互和執行 SQL 命令。
/ as sysdba 是一種特殊的連接方式,其中 / 表示連接時不需要輸入用戶名,sysdba 是系統管理員角色的一種,具有最高權限,可以執行數據庫的管理操作。
因此,當你使用 sqlplus / as sysdba 命令連接到 Oracle 數據庫時,你將以系統管理員 (sysdba) 的身份登錄,擁有對數據庫實例進行各種管理操作的權限。這種連接方式常用于執行數據庫的操作和維護,例如創建和修改數據庫對象、備份和恢復數據等。需要謹慎使用,以免誤操作導致不可逆的損壞。

8,查看show pdbs

show pdbs

在這里插入圖片描述

9,切換數據庫

alter session set container=ORCLPDB;

10,創建用戶

# create user 用戶名 identified by 密碼;
create user root identified by root;

11,授權

grant dba to root;

Oracle 數據庫中,GRANT DBA TO user; 是一種授權命令,用于賦予指定用戶(user)數據庫管理員 (DBA) 的權限。具體到你的問題 grant dba to root;,這個命令的含義如下:

GRANT: 這是 Oracle 數據庫中用于授權的關鍵字,用于給予用戶特定的權限。
DBA: 是一個預定義的角色(Role),代表數據庫管理員角色,具有數據庫的最高權限。DBA 角色允許用戶管理數據庫對象、執行系統級別的任務等。
TO: 表示授權的目標,即要授予權限的用戶或角色。
root: 在你的命令中,root 可能指的是操作系統中的 root 用戶,但需要注意,在 Oracle 數據庫中,通常需要使用數據庫用戶(例如 SYS 用戶)來執行授權操作,而不是操作系統的 root 用戶。

12,使用navicat連接

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/72126.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/72126.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/72126.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LINUX 指令大全

Linux服務器上有許多常用的命令&#xff0c;可以幫助你管理文件、目錄、進程、網絡和系統配置等。以下是一些常用的Linux命令&#xff1a; 文件和目錄管理 ls&#xff1a;列出當前目錄中的文件和子目錄 bash lspwd&#xff1a;顯示當前工作目錄的路徑 bash pwdcd&#xff1a;切…

燃氣對我們生活的重要性體現在哪里?

燃氣在我們的生活中有 多方面的重要性 &#xff0c;以下是燃氣對我們生活的重要性的詳細說明&#xff1a; 烹飪和熱水供應 &#xff1a; 燃氣是家庭烹飪的主要能源&#xff0c;能夠快速、高效地加熱食物&#xff0c;使家庭聚餐更加便捷和愉快。 燃氣熱水器能夠在短時間內提供…

NetAssist 5.0.14網絡助手基礎使用及自動應答使用方案

以下是NetAssist v5.0.14自動應答功能的詳細使用步驟&#xff1a; 一、基礎準備&#xff1a; 工具下載網址頁面&#xff1a;https://www.cmsoft.cn/resource/102.html 下載安裝好后&#xff0c;根據需要可以創建多個server&#xff0c;雙擊程序圖標運行即可&#xff0c;下面…

node.js-node.js作為服務器,前端使用WebSocket(單個TCP連接上進行全雙工通訊的協議)

1.WebSocket全雙工通信協議 WebSocket是HTML5開始提供的一種單個TCP連接上進行全雙工通訊的協議。讓客戶端和服務器間的數據交互變得簡單&#xff0c;允許服務端向客戶端主動推送數據。瀏覽器和服務器間只需要完成一次握手&#xff0c;兩者間創建持久性的連接&#xff0c;并進行…

java后端開發day31--集合進階(一)-----Collection集合List集合數據結構1

&#xff08;以下內容全部來自上述課程&#xff09; 1.集合體系結構 List系列集合&#xff1a;添加的元素是有序、可重復、有索引。 Set系列集合&#xff1a;添加的元素是無序、不重復、無索引。 2.Collection集合 Collection是單列集合的祖宗接口&#xff08;不可直接創建…

Qt配置OpenGL相機踩的坑

項目根據LearnOpenGL配置Qt的相機&#xff0c;更新view矩陣和project矩陣的位移向量變得很大&#xff0c;我設置的明明相機位置是(0,0,3)&#xff0c;理想的位移向量剛好是相反數(0,0,-3)&#xff0c;對應的view矩陣位置向量可以變成(0,0,1200)…離模型非常遠矩陣模型也看不見&…

【C++設計模式】第十六篇:迭代器模式(Iterator)

注意&#xff1a;復現代碼時&#xff0c;確保 VS2022 使用 C17/20 標準以支持現代特性。 遍歷聚合對象的統一方式 1. 模式定義與用途 核心思想 ?迭代器模式&#xff1a;提供一種方法順序訪問聚合對象的元素&#xff0c;而無需暴露其內部表示。關鍵用途&#xff1a; 1.?統一…

關于WPS的Excel點擊單元格打開別的文檔的兩種方法的探究【為單元格添加超鏈接】

問題需求 目錄和文件結構如下&#xff1a; E:\Dir_Level1 │ Level1.txt │ └─Dir_Level2│ Level2.txt│ master.xlsx│└─Dir_Level3Level3.txt現在要在master.xlsx點擊單元格進而訪問Level1.txt、Level2.txt、Level3.txt這些文件。 方法一&#xff1a;“單元格右鍵…

聚類中的相似矩陣和拉普拉斯矩陣

前言&#xff08;可以略過&#xff09; 最近在看的是關于聚類的論文&#xff0c;之前對聚類的步驟和相關內容不太了解&#xff0c;為了讀懂論文就去學習了一下&#xff0c;這里將自己的理解記錄下來。學習的不全面&#xff0c;主要是為了看懂論文&#xff0c;后續如果有涉及到聚…

前端筆記 --- vue框架

目錄 基礎知識 指令的修飾符 計算屬性 watch偵聽器的寫法 Vue的生命周期 工程化開發&腳手架 VUE CLI 組件注冊的方式 scoped樣式沖突與原理 data 組件之間的關系和組件通信 v-model詳解 sync修飾符 Dom介紹 操作HTML標簽 總結 ref 和 $refs $nextTick 自…

智能雙劍合璧:基于語音識別與大模型的技術沙龍筆記整理實戰

智能雙劍合璧&#xff1a;基于語音識別與大模型的技術沙龍筆記整理實戰 ——記一次網絡安全技術沙龍的高效知識沉淀 引言&#xff1a;當網絡安全遇上AI生產力工具 在綠盟科技舉辦的"AI驅動的未來網絡安全"內部技術沙龍中&#xff0c;筆者親歷了一場關于網絡安全攻…

數據結構(藍橋杯常考點)

數據結構 前言&#xff1a;這個是針對于藍橋杯競賽常考的數據結構內容&#xff0c;基礎算法比如高精度這些會在下期給大家總結 數據結構 競賽中&#xff0c;時間復雜度不能超過10的7次方&#xff08;1秒&#xff09;到10的8次方&#xff08;2秒&#xff09; 空間限制&#x…

使用 UNIX 命令在設計中搜索標識符:vcsfind 的入門指南

在現代軟件開發和硬件設計中&#xff0c;快速準確地定位和搜索特定標識符是提高開發效率的關鍵。本文將介紹如何使用 UNIX 命令 vcsfind 在設計中搜索標識符&#xff0c;幫助您更高效地管理您的項目。 什么是 vcsfind&#xff1f; vcsfind 是一個強大的 UNIX 命令行工具&#x…

第56天:Web攻防-SQL注入增刪改查盲注延時布爾報錯有無回顯錯誤處理審計復盤

#知識點 1、Web攻防-SQL注入-操作方法&增刪改查 2、Web攻防-SQL注入-布爾&延時&報錯&盲注 一、增刪改查 1、功能&#xff1a;數據查詢 查詢&#xff1a;SELECT * FROM news where id$id 2、功能&#xff1a;新增用戶&#xff0c;添加新聞等 增加&#xff1a;IN…

跳表實現學習

1.介紹 2.源碼 跳表節點&#xff1a; /* ZSETs use a specialized version of Skiplists */ /*** brief 定義跳躍表節點的數據結構。* * 該結構體用于表示跳躍表中的一個節點&#xff0c;包含元素、分數、后向指針和多層鏈表信息。*/ typedef struct zskiplistNode {sds ele;…

Python:正則表達式

正則表達式的基礎和應用 一、正則表達式核心語法&#xff08;四大基石&#xff09; 1. ?元字符&#xff08;特殊符號&#xff09;? ?定位符 ^&#xff1a;匹配字符串開始位置 $&#xff1a;匹配字符串結束位置 \b&#xff1a;匹配單詞邊界?&#xff08;如 \bword\b 匹配…

EB-Cable許可管理中的數據安全與隱私保護

在數字化時代&#xff0c;數據安全與隱私保護已成為企業關注的重中之重。作為專業的電纜管理軟件&#xff0c;EB-Cable許可管理不僅在功能豐富和操作便捷方面表現出色&#xff0c;更在數據安全與隱私保護方面為用戶提供了堅實的保障。本文將詳細介紹EB-Cable許可管理在數據安全…

串口通信函數匯總-ing

謝謝各位佬的閱讀&#xff0c;本文是我自己的理解&#xff0c;如果您發現錯誤&#xff0c;麻煩請您指出&#xff0c;謝謝 首先談談我自己對于串口的理解&#xff0c;隨便拿一個嵌入式的板子&#xff0c;它上面有兩個引腳&#xff0c;一個是rx&#xff0c;一個是tx&#xff0c;r…

如何用HTML5 Canvas實現電子簽名功能??

&#x1f916; 作者簡介&#xff1a;水煮白菜王&#xff0c;一位前端勸退師 &#x1f47b; &#x1f440; 文章專欄&#xff1a; 前端專欄 &#xff0c;記錄一下平時在博客寫作中&#xff0c;總結出的一些開發技巧和知識歸納總結?。 感謝支持&#x1f495;&#x1f495;&#…

大模型開源的工具包有哪些特殊符號可以使用;SEP 是什么

大模型開源的工具包有哪些特殊符號可以使用 目錄 大模型開源的工具包有哪些特殊符號可以使用自定義特殊token:special_tokens=True一、**對話輪次分隔符(必選)**二、**系統提示標記(提升指令理解)**三、**中文特色分隔符(貼合書寫習慣)**四、**開源模型專屬符號(按文檔…