How to execute Linux shell commands in Docker

How to execute Linux shell commands in Docker

To execute a shell command in Docker, you need to add sh -c before the command, for example:

docker run ubuntu sh -c 'cat /data/a.txt > b.txt'

Otherwise, the instruction cannot be parsed normally.

Supplement: [Docker application] Execute the specified script in docker (run springboot application under docker)

【Docker application】 Execute the specified script in docker

Here is an example of executing a spring boot application:

1. Create an image file (template) to execute the sh script

Dockfile
FROM vertigomedia/ubuntu-jdk8
RUN touch /root/app_start.sh
RUN echo "#!/bin/bash" > /root/app_start.sh
RUN echo "echo 111" >> /root/app_start.sh
RUN chmod a+x /root/app_start.sh
ENV TZ 'Asia/Shanghai'
ENV APP_FILE /root/app_start.sh
EXPOSE 8889
CMD $APP_FILE
#ENTRYPOINT ["/bin/sh", "-c", "$APP_FILE"]

2. Create a script file (script to be executed in the container)

container.sh
#!/bin/bash
echo "test xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
java -jar -Xms500m -Xmx500m -Dspring.profiles.active=test-docker-1 /root/app.jar

3. Create a startup script (here is just the startup command)

docker run -itd \
 --name test_container \
 --hostname test_container \
 --net test_net --ip 170.170.1.199 \
 --volume /root/container.sh:/root/app_start.sh \
 --volume /opt/test-1.0.0-SNAPSHOT.jar:/root/app.jar \
 --privileged=true \
 test:123 /bin/bash -c 'sh /root/app_start.sh'

The above is my personal experience. I hope it can give you a reference. I also hope that you will support 123WORDPRESS.COM. If there are any mistakes or incomplete considerations, please feel free to correct me.

You may also be interested in:
  • The most comprehensive collection of commonly used Linux commands (with examples)
  • Java implements command interaction code under docker container in Linux (centos) (configuration wizard)
  • A complete list of commonly used Linux commands (super comprehensive)
  • How to save command output to a file in Linux terminal
  • Several useless but interesting commands in Linux (collection)

<<:  Introduction to the use of MySQL source command

>>:  CSS animation property usage and example code (transition/transform/animation)

Recommend

Detailed analysis of the MySQL slow log opening method and storage format

In development projects, we can monitor SQL with ...

Nginx configuration location matching rules example explanation

The scope of nginx configuration instructions can...

MySQL Series 11 Logging

Tutorial Series MySQL series: Basic concepts of M...

Why the disk space is not released after deleting data in MySQL

Table of contents Problem Description Solution Pr...

How to install mysql via yum on centos7

1. Check whether MySQL is installed yum list inst...

Analysis of parameter transfer process of driver module in Linux

Declare the parameter name, type and permission y...

Detailed explanation of Docker Compose deployment and basic usage

1. Docker Compose Overview Compose is a tool for ...

Floating menu, can achieve up and down scrolling effect

The code can be further streamlined, but due to t...

Nexus uses nginx proxy to support HTTPS protocol

background All company websites need to support t...

Writing tab effects with JS

This article example shares the specific code for...

What qualities should a good advertisement have?

Some people say that doing advertising is like bei...