一、DOCKER安装
1、卸载旧的docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、安装docker
#使用docker软件仓库安装docker
sudo yum install -y yum-utils \
device-mapper-persistent \
lvm2
3、添加docker软件仓库地址
#使用阿里云地址
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4、这里用社区版安装
sudo yum install docker-ce docker-ce-cli containerd.io
5、启动docker
sudo systemctl start docker
#查看状态
sudo systemctl status docker
6、使用helloworld验证docker
sudo docker run hello-world
二、使用
1、拉取镜像
#修改阿里云镜像
vim /etc/docker/daemon.json
#修改daemon配置文件/etc/docker/daemon.json使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://替换为自己的地址.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
1.1获取onlyoffice镜像
#docker pull 镜像名称
#onlyoffice为例
docker pull onlyoffice/documentserver
#运行onlyoffice
docker run -i -t -d -p 8050:80 --restart=always -v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data -v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice -v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql onlyoffice/documentserver
2、操作docker
#查看docker镜像
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
onlyoffice/documentserver latest 731f9669f88e 14 months ago 2.72GB
hello-world latest feb5d9fea6a5 15 months ago 13.3kB
#查看正在运行的容器
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
713c82f865b3 onlyoffice/documentserver "/app/ds/run-documen…" 24 minutes ago Up 24 minutes 443/tcp, 0.0.0.0:8050->80/tcp, :::8050->80/tcp mystifying_nash
#docker ps -a 查看所有容器包括运行的和未运行的
#进入容器
docker exec -it <containerID> bash
#以onlyoffice为例
docker exec -it 713c82f865b3 bash
#docker中使用vim
#更新获取最新的包
docker exec -it 容器名 apt-get update
#nginx为例
docker exec -it nginx apt-get update
#安装
docker exec -it 容器名 apt-get install -y vim
#nginx为例
docker exec -it nginx apt-get install -y vim
#oracle为例
#创建容器,创建完容器后数据库自动启动 oracle:itsm使用docker images -a REPOSITORY:TAG
docker run -h oracletest -d -p 11521:1521 --name oracleTest1 -e ORACLE_ALLOW_REMOTE=true oracle:itsm
#创建容器,并挂载数据目录 -v /home/tmp:/tmp /home/tmp是主机上(宿主机)的目录,/tmp是docker容器中的路径。接下来只要把文件放入主机上的目录中,即可在容器中使用该文件。
docker run -h oracletest -d -p 11522:1521 --name oraclesyt -e ORACLE_ALLOW_REMOTE=true -v /home/tmp:/tmp oracle11g:itsm
#使用docker ps查看容器names
[root@sophia ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4d731daba287 oracle11g:itsm "/bin/sh -c '/usr/..." 2 months ago Up About an hour 22/tcp, 8080/tcp, 0.0.0.0:11521->1521/tcp oracle
#启动
docker start 容器names
#停止
docker stop 容器names
#进入容器后可以使用oracle用户sqlplus操作数据库,与单机安装的相同
#进入容器
docker exec -it oracle11 /bin/bash
#切换用户
su oracle(root用户默认密码:helowin)
#操作数据库
sqlplus /nolog
conn /as sysdba
#查看服务名
select name from v$database;
#连接数据库
#服务名:xe
#端口号:11521
#用户:itsm
#密码:itsm
#新建用户
create user 用户名 identified by 密码;
#用户授权
grant connect,resource,dba to 用户;
#设置密码永不过期
alter profile default limit password_life_time unlimited;